diff --git a/binding-sandbox/sandbox-serial-util.h b/binding-sandbox/sandbox-serial-util.h index d7ceffc3..fe018807 100644 --- a/binding-sandbox/sandbox-serial-util.h +++ b/binding-sandbox/sandbox-serial-util.h @@ -79,14 +79,14 @@ namespace mkxp_sandbox { using namespace mkxp_sandbox; if (ptr == nullptr) { - if (!mkxp_sandbox::sandbox_serialize((uint32_t)2, data, max_size)) return false; + if (!mkxp_sandbox::sandbox_serialize((uint8_t)2, data, max_size)) return false; } else { const auto &it = map.find(ptr); if (it != map.end()) { - if (!mkxp_sandbox::sandbox_serialize((uint32_t)(it->second.is_extra ? 1 : 0), data, max_size)) return false; + if (!mkxp_sandbox::sandbox_serialize((uint8_t)(it->second.is_extra ? 1 : 0), data, max_size)) return false; if (!mkxp_sandbox::sandbox_serialize(it->second.key, data, max_size)) return false; } else { - if (!mkxp_sandbox::sandbox_serialize((uint32_t)1, data, max_size)) return false; + if (!mkxp_sandbox::sandbox_serialize((uint8_t)1, data, max_size)) return false; constexpr wasm_size_t typenum = get_typenum::value; extra_objects.emplace_back((const void *)ptr, typenum); diff --git a/src/display/bitmap.cpp b/src/display/bitmap.cpp index 7e6e10c0..c5d27a37 100644 --- a/src/display/bitmap.cpp +++ b/src/display/bitmap.cpp @@ -3392,6 +3392,9 @@ void Bitmap::loresDisposal() #ifdef MKXPZ_RETRO bool Bitmap::_sandbox_serialize_inner(void *&data, mkxp_sandbox::wasm_size_t &max_size) const { + if (isDisposed()) return mkxp_sandbox::sandbox_serialize(false, data, max_size); + if (!mkxp_sandbox::sandbox_serialize(true, data, max_size)) return false; + if (!mkxp_sandbox::sandbox_serialize((int32_t)width(), data, max_size)) return false; if (!mkxp_sandbox::sandbox_serialize((int32_t)height(), data, max_size)) return false; if (!mkxp_sandbox::sandbox_serialize(p->animation.enabled, data, max_size)) return false; @@ -3416,9 +3419,6 @@ bool Bitmap::_sandbox_serialize_inner(void *&data, mkxp_sandbox::wasm_size_t &ma bool Bitmap::sandbox_serialize(void *&data, mkxp_sandbox::wasm_size_t &max_size) const { - if (isDisposed()) return mkxp_sandbox::sandbox_serialize(false, data, max_size); - if (!mkxp_sandbox::sandbox_serialize(true, data, max_size)) return false; - if (!mkxp_sandbox::sandbox_serialize(p->selfHires != nullptr, data, max_size)) return false; if (p->selfHires != nullptr) {