Skip to content

Renderer crashes on WebAssembly.compileStreaming / instantiateStreaming with nodeIntegration since 42.4.0 (Assertion failed: \!impl.IsEmpty in node_wasm_web_api.cc) #51950

@create3000

Description

@create3000

Preflight Checklist

Electron Version

42.4.0

What operating system(s) are you using?

macOS

Operating System Version

Tahoe 26.5.1 (25F80)

What arch are you using?

arm64 (including Apple Silicon)

Last Known Working Electron version

42.3.3

Does the issue also appear in Chromium / Google Chrome?

No, tested Version 149.0.7827.103 (Offizieller Build) (arm64)

Expected Behavior

Should run.

Actual Behavior

Caution

Note to maintainers: the repro gist runs a third-party library with nodeIntegration: true. This is potentially unsafe. Please don't run it.

There is also a Electron Fiddle to test: https://gist.github.com/create3000/88bb73719dba1f70a0422d12d61db62f
please update Electron to 42.4.0 to see it crashes.

Get such errors:

> sunrize@2.1.4 start
> electron .

update-electron-app config looks good; aborting updates since app is in development mode

  #  /Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper (Renderer).app/Contents/MacOS/Electron Helper (Renderer)[82090]: void node::wasm_web_api::StartStreamingCompilation(const FunctionCallbackInfo<Value> &) at ../../third_party/electron_node/src/node_wasm_web_api.cc:175
  #  Assertion failed: !impl.IsEmpty()

----- Native stack trace -----

 1: 0x110a6a8bc node::Assert(node::AssertionInfo const&) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 2: 0x1129b2ddc node::wasm_web_api::StartStreamingCompilation(v8::FunctionCallbackInfo<v8::Value> const&) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 3: 0x177fc05cc 
 4: 0x177e58238 
 5: 0x177e57378 
 6: 0x177fbec1c 
 7: 0x11054c238 v8::MicrotasksScope::~MicrotasksScope() [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 8: 0x1121fb994 v8::internal::ThreadIsolation::LookupWritableJitPage(unsigned long, unsigned long) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 9: 0x1108b91c4 v8::Object::HasOwnProperty(v8::Local<v8::Context>, v8::Local<v8::Name>) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
10: 0x11002d04c v8::Number::New(v8::Isolate*, double) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
11: 0x1100c682c cppgc::internal::MakeGarbageCollectedTraitInternal::Allocate(cppgc::AllocationHandle&, unsigned long, unsigned short) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
12: 0x1122a7e94 v8::internal::compiler::CompilationDependencies::FieldTypeDependencyOffTheRecord(v8::internal::compiler::MapRef, v8::internal::compiler::MapRef, v8::internal::InternalIndex, v8::internal::compiler::ObjectRef) const [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
13: 0x1113484f0 node::PrincipalRealm::inspector_enable_async_hooks() const [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
14: 0x111347efc node::PrincipalRealm::inspector_enable_async_hooks() const [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
15: 0x11015145c v8::internal::CopyTracedReference(unsigned long const* const*, unsigned long**) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
16: 0x111b76c10 v8::ModuleRequest::GetPhase() const [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
17: 0x111a05d24 node::Environment::GetNow() [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
18: 0x11155b6ac v8::Exception::CaptureStackTrace(v8::Local<v8::Context>, v8::Local<v8::Object>) [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
19: 0x111a7b124 ElectronMain [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
20: 0x111a7aa94 ElectronMain [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
21: 0x10458d504  [/Users/holger/Desktop/X_ITE/sunrize/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper (Renderer).app/Contents/MacOS/Electron Helper (Renderer)]
22: 0x18ddd3e00 start [/usr/lib/dyld]

Testcase Gist URL

Caution

Note to maintainers: the repro gist runs a third-party library with nodeIntegration: true. This is potentially unsafe. Please don't run it.

https://gist.github.com/create3000/88bb73719dba1f70a0422d12d61db62f

Additional Information

No response

Metadata

Metadata

Type

No fields configured for Bug.

Projects

Status
🛑 Blocks Stable

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions