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
[EH] Fix inconsistency of in/decrementing refcounts (#25988)
This fixes inconsistency of incrementing/decrementing refcounts between
Wasm EH and Emscripten EH.
Previously, in Emscripten EH, we incremented the refcount in
`__cxa_begin_catch`, while Wasm EH incremented it in `__cxa_throw`. This
PR moves the incrementing call from `__cxa_begin_catch` to `__cxa_throw`
as well. This also increments the refcount in `__cxa_rethrow`.
These incrementing calls are guarded with
`+#if !DISABLE_EXCEPTION_CATCHING`, because without that,
`std::terminate` will run:
https://github.com/emscripten-core/emscripten/blob/d1251798144df813c52934768964a1223504c440/system/lib/libcxxabi/src/cxa_noexception.cpp#L25-L35Fixes#17115.
0 commit comments