-
Notifications
You must be signed in to change notification settings - Fork 5.6k
[browser] Fix Debug-only startup failures: stack-first assert, incoming Module API, preRun function form #134527
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
e03f7ed
01aa2d4
33c23b8
8370487
0e89d24
435912e
25b5c8e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -198,7 +198,7 @@ mono_threads_platform_get_stack_bounds (guint8 **staddr, size_t *stsize) | |
| if (G_UNLIKELY (res != 0)) | ||
| g_error ("%s: pthread_attr_destroy failed with \"%s\" (%d)", __func__, g_strerror (res), res); | ||
|
|
||
| g_assert (*staddr != NULL); | ||
| // emscripten links with --stack-first at -O0, which puts the stack at the start of the linear memory, so staddr can legitimately be NULL | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we should probably backport this to 11.0 (we could argue it's a test-only change since it happens in Debug only) since it will get lost in main soon
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nobody in the world ever builds mono+MT+wasm+debug. And I'm not going to do it any time soon again. |
||
| g_assert (*stsize != (size_t)-1); | ||
|
Comment on lines
+201
to
202
|
||
| #elif defined(HOST_WASI) && !defined(DISABLE_THREADS) | ||
| // TODO: this will need changes for WASI multithreading as the stack will be allocated per thread at different addresses | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Structurally addressed: the items now come from the
GenerateEmccExportsdependency, so the ItemGroup-before-PropertyGroup ordering hazard this flags is gone. The CoreCLR in-tree browserhost link was rebuilt and itscheckIncomingModuleAPIis unchanged (rejectswasmMemory/wasmBinary, accepts the 26 defaults). A full Wasm.Build.Tests/xharness Debug startup run is still pending, so I'm leaving this open until that runs.Note: written with GitHub Copilot.