From 965f656c722debd1f0a5a0aca2438cee2f7e43dc Mon Sep 17 00:00:00 2001 From: win7-7 Date: Sun, 28 Dec 2025 23:18:33 +0200 Subject: [PATCH] 1318252 - Baldr: Serialize Import's DefinitionKind Otherwise, all imports are treated as function imports after deserialization. Fixes crash with 1321122. --- js/src/wasm/WasmTypes.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/js/src/wasm/WasmTypes.cpp b/js/src/wasm/WasmTypes.cpp index 5e857454d2..7ba639023d 100644 --- a/js/src/wasm/WasmTypes.cpp +++ b/js/src/wasm/WasmTypes.cpp @@ -572,7 +572,8 @@ size_t Import::serializedSize() const { return module.serializedSize() + - field.serializedSize(); + field.serializedSize() + + sizeof(kind); } uint8_t* @@ -580,6 +581,7 @@ Import::serialize(uint8_t* cursor) const { cursor = module.serialize(cursor); cursor = field.serialize(cursor); + cursor = WriteScalar(cursor, kind); return cursor; } @@ -587,7 +589,8 @@ const uint8_t* Import::deserialize(const uint8_t* cursor) { (cursor = module.deserialize(cursor)) && - (cursor = field.deserialize(cursor)); + (cursor = field.deserialize(cursor)) && + (cursor = ReadScalar(cursor, &kind)); return cursor; }