mirror of
https://github.com/mkxp-z/mkxp-z.git
synced 2025-08-23 15:23:44 +02:00
Fix save state serialization of bitmaps in libretro builds
This commit is contained in:
parent
e137548de4
commit
1b0757c5db
2 changed files with 3 additions and 15 deletions
|
@ -3390,7 +3390,7 @@ void Bitmap::loresDisposal()
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef MKXPZ_RETRO
|
#ifdef MKXPZ_RETRO
|
||||||
bool Bitmap::_sandbox_serialize_inner(void *&data, mkxp_sandbox::wasm_size_t &max_size) const
|
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 (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(true, data, max_size)) return false;
|
||||||
|
@ -3411,22 +3411,11 @@ bool Bitmap::_sandbox_serialize_inner(void *&data, mkxp_sandbox::wasm_size_t &ma
|
||||||
|
|
||||||
if (!mkxp_sandbox::sandbox_serialize(p->path, data, max_size)) return false;
|
if (!mkxp_sandbox::sandbox_serialize(p->path, data, max_size)) return false;
|
||||||
if (!mkxp_sandbox::sandbox_serialize(p->font, data, max_size)) return false;
|
if (!mkxp_sandbox::sandbox_serialize(p->font, data, max_size)) return false;
|
||||||
|
if (!mkxp_sandbox::sandbox_serialize(p->selfHires, data, max_size)) return false;
|
||||||
|
if (!mkxp_sandbox::sandbox_serialize(p->selfLores, data, max_size)) return false;
|
||||||
|
|
||||||
// TODO: serialize bitmap pixels
|
// TODO: serialize bitmap pixels
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Bitmap::sandbox_serialize(void *&data, mkxp_sandbox::wasm_size_t &max_size) const
|
|
||||||
{
|
|
||||||
if (!mkxp_sandbox::sandbox_serialize(p->selfHires != nullptr, data, max_size)) return false;
|
|
||||||
|
|
||||||
if (p->selfHires != nullptr) {
|
|
||||||
if (!p->selfHires->_sandbox_serialize_inner(data, max_size)) return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!_sandbox_serialize_inner(data, max_size)) return false;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
#endif // MKXPZ_RETRO
|
#endif // MKXPZ_RETRO
|
||||||
|
|
|
@ -197,7 +197,6 @@ public:
|
||||||
void assumeRubyGC();
|
void assumeRubyGC();
|
||||||
|
|
||||||
#ifdef MKXPZ_RETRO
|
#ifdef MKXPZ_RETRO
|
||||||
bool _sandbox_serialize_inner(void *&data, mkxp_sandbox::wasm_size_t &max_size) const;
|
|
||||||
bool sandbox_serialize(void *&data, mkxp_sandbox::wasm_size_t &max_size) const;
|
bool sandbox_serialize(void *&data, mkxp_sandbox::wasm_size_t &max_size) const;
|
||||||
#endif // MKXPZ_RETRO
|
#endif // MKXPZ_RETRO
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue