Index: src/runtime/runtime-function.cc |
diff --git a/src/runtime/runtime-function.cc b/src/runtime/runtime-function.cc |
index 7d7b81109284cc88a597d2f05214076fe26aca17..eb5cf9311d7c213c11f51c0cb5097ed82ec3bdd6 100644 |
--- a/src/runtime/runtime-function.cc |
+++ b/src/runtime/runtime-function.cc |
@@ -307,10 +307,15 @@ RUNTIME_FUNCTION(Runtime_WasmGetFunctionName) { |
HandleScope scope(isolate); |
DCHECK_EQ(2, args.length()); |
- CONVERT_ARG_HANDLE_CHECKED(JSObject, wasm, 0); |
+ CONVERT_ARG_HANDLE_CHECKED(Object, wasm, 0); |
CONVERT_SMI_ARG_CHECKED(func_index, 1); |
- return *wasm::GetWasmFunctionName(wasm, func_index); |
+ RUNTIME_ASSERT(wasm->IsUndefined() || wasm->IsJSObject()); |
+ Handle<Object> funName = |
+ wasm->IsUndefined() |
+ ? wasm |
+ : wasm::GetWasmFunctionName(Handle<JSObject>::cast(wasm), func_index); |
+ return *funName; |
} |
} // namespace internal |