diff options
Diffstat (limited to 'src/save.c')
-rw-r--r-- | src/save.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/save.c b/src/save.c index 3ce4025bf..6d8a14871 100644 --- a/src/save.c +++ b/src/save.c @@ -39,11 +39,12 @@ // (u8 *)structure was removed from the first statement of the macro in Emerald // and Fire Red/Leaf Green. This is because malloc is used to allocate addresses // so storing the raw addresses should not be done in the offsets information. -#define SAVEBLOCK_CHUNK(structure, chunkNum) \ -{ \ - chunkNum * SECTOR_DATA_SIZE, \ - min(sizeof(structure) - chunkNum * SECTOR_DATA_SIZE, SECTOR_DATA_SIZE) \ -} \ +#define SAVEBLOCK_CHUNK(structure, chunkNum) \ +{ \ + chunkNum * SECTOR_DATA_SIZE, \ + sizeof(structure) >= chunkNum * SECTOR_DATA_SIZE ? \ + min(sizeof(structure) - chunkNum * SECTOR_DATA_SIZE, SECTOR_DATA_SIZE) : 0 \ +} const struct SaveSectionOffsets gSaveSectionOffsets[] = { @@ -859,7 +860,7 @@ void Task_LinkSave(u8 taskId) case 2: if (IsLinkTaskFinished()) { - save_serialize_map(); + SaveMapView(); gTasks[taskId].data[0] = 3; } break; |