diff options
author | Sergeanur <s.anureev@yandex.ua> | 2021-07-03 15:39:22 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2021-07-03 15:39:22 +0200 |
commit | 5d5e0f62e8b677e122cbdceef8badcbaae7c0235 (patch) | |
tree | 499f2b9d749dc151a1f78b0f1e6433046d358636 /src/save | |
parent | Merge branch 'miami' into lcs (diff) | |
parent | Fix overflow in audio code (diff) | |
download | re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.tar re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.tar.gz re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.tar.bz2 re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.tar.lz re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.tar.xz re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.tar.zst re3-5d5e0f62e8b677e122cbdceef8badcbaae7c0235.zip |
Diffstat (limited to 'src/save')
-rw-r--r-- | src/save/GenericGameStorage.cpp | 5 | ||||
-rw-r--r-- | src/save/SaveBuf.h | 36 |
2 files changed, 23 insertions, 18 deletions
diff --git a/src/save/GenericGameStorage.cpp b/src/save/GenericGameStorage.cpp index cbd4e2a4..7921b22a 100644 --- a/src/save/GenericGameStorage.cpp +++ b/src/save/GenericGameStorage.cpp @@ -251,6 +251,11 @@ GenericSave(int file) WriteSaveDataBlock(CStreaming::MemoryCardSave, "StreamingSize"); WriteSaveDataBlock(CPedType::Save, "PedTypeSize"); + // sure just write garbage data repeatedly ... +#ifndef THIS_IS_STUPID + memset(work_buff, 0, sizeof(work_buff)); +#endif + // Write padding for (int i = 0; i < 4; i++) { size = align4bytes(SIZE_OF_ONE_GAME_IN_BYTES - totalSize - 4); diff --git a/src/save/SaveBuf.h b/src/save/SaveBuf.h index de27017e..6e9b3ae9 100644 --- a/src/save/SaveBuf.h +++ b/src/save/SaveBuf.h @@ -83,29 +83,29 @@ WriteSaveBuf(uint8 *&buf, uint32 &length, const T &value) #ifdef VALIDATE_SAVE_SIZE #define CheckSaveHeader(buf, a, b, c, d, size) do { \ - char _C; uint32 _size;\ - ReadSaveBuf(&_C, buf);\ - assert(_C == a);\ - ReadSaveBuf(&_C, buf);\ - assert(_C == b);\ - ReadSaveBuf(&_C, buf);\ - assert(_C == c);\ - ReadSaveBuf(&_C, buf);\ - assert(_C == d);\ + char _c; uint32 _size;\ + ReadSaveBuf(&_c, buf);\ + assert(_c == a);\ + ReadSaveBuf(&_c, buf);\ + assert(_c == b);\ + ReadSaveBuf(&_c, buf);\ + assert(_c == c);\ + ReadSaveBuf(&_c, buf);\ + assert(_c == d);\ ReadSaveBuf(&_size, buf);\ assert(_size == size);\ } while(0) #define CheckSaveHeaderWithLength(buf,len,a,b,c,d,size) do { \ - char _C; uint32 _size;\ - ReadSaveBuf(&_C, buf, len);\ - assert(_C == a);\ - ReadSaveBuf(&_C, buf, len);\ - assert(_C == b);\ - ReadSaveBuf(&_C, buf, len);\ - assert(_C == c);\ - ReadSaveBuf(&_C, buf, len);\ - assert(_C == d);\ + char _c; uint32 _size;\ + ReadSaveBuf(&_c, buf, len);\ + assert(_c == a);\ + ReadSaveBuf(&_c, buf, len);\ + assert(_c == b);\ + ReadSaveBuf(&_c, buf, len);\ + assert(_c == c);\ + ReadSaveBuf(&_c, buf, len);\ + assert(_c == d);\ ReadSaveBuf(&_size, buf, len);\ assert(_size == size);\ } while(0) |