You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Atomics.store(Module['HEAPU32'],(threadInfoStruct+{{{C_STRUCTS.pthread.threadExitCode }}})>>2,-2/*A custom entry specific to Emscripten denoting that the thread crashed.*/);
209
-
#else
210
-
Atomics.store(Module['HEAPU32'],(threadInfoStruct+{{{C_STRUCTS.pthread.threadExitCode }}})>>2,(exinstanceofModule['ExitStatus']) ? ex.status : -2/*A custom entry specific to Emscripten denoting that the thread crashed.*/);
211
-
#endif
212
-
213
-
Atomics.store(Module['HEAPU32'],(threadInfoStruct+{{{C_STRUCTS.pthread.threadStatus }}})>>2,1);// Mark the thread as no longer running.
214
206
#if ASSERTIONS
207
+
// FIXME(sbc): Figure out if this is still needed or useful. Its not
208
+
// clear to me how this check could ever fail. In order to get into
209
+
// this try/catch block at all we have already called bunch of
210
+
// functions on `Module`.. why is this one special?
Module['_emscripten_futex_wake'](threadInfoStruct+{{{C_STRUCTS.pthread.threadStatus }}},0x7FFFFFFF/*INT_MAX*/);// Wake all threads waiting on this thread to finish.
221
216
#if MINIMAL_RUNTIME
217
+
// ExitStatus not present in MINIMAL_RUNTIME
218
+
Module['PThread'].threadExit(-2);
222
219
throwex;// ExitStatus not present in MINIMAL_RUNTIME
0 commit comments