wasm-micro-runtime/core
Yi Liu 539bebed9c
Fix missing IS_INVALID_TAGINDEX check in RETHROW handler (#4837)
* Fix RETHROW handler missing IS_INVALID_TAGINDEX check

Add validation for exception_tag_index in the RETHROW opcode handler
to prevent out-of-bounds access to module->module->tags[] when the
tag index is INVALID_TAGINDEX (0xFFFFFFFF). This matches the existing
check in the THROW handler.

When CATCH_ALL catches a cross-module exception with an unknown tag,
it pushes INVALID_TAGINDEX onto the stack. Without this check, a
subsequent RETHROW would access tags[0xFFFFFFFF].

* Fix incorrect code section byte counts in exception handling test

The hand-crafted WASM binary in load_module_with_exception_handling had
an off-by-one in the code section: body size was declared as 7 but the
actual body (local count + try/catch_all/end/end) is only 6 bytes.
This caused the WASM loader to fail with "unexpected end" when it tried
to read past the available bytes.

Fix the body size from 7 to 6 and the code section size from 9 to 8.
2026-03-09 10:04:18 +08:00
..
deps Separate app-manager and app-framework from WAMR (#3129) 2024-02-20 18:12:36 +08:00
iwasm Fix missing IS_INVALID_TAGINDEX check in RETHROW handler (#4837) 2026-03-09 10:04:18 +08:00
shared fix(ems): avoid abort in gc_migrate when heap metadata is corrupted (#4862) 2026-03-05 09:13:28 +08:00
config.h add micro AMR_BUILD_LIME1 to enable minimal lime1 feature set (#4571) 2025-09-14 14:08:27 +08:00
version.h Bump version number to 2.4.3 (#4671) 2025-10-23 13:15:25 +08:00
version.h.in Add version.h and update versioning documentation for embedded platforms 2025-02-05 10:31:20 +00:00