summaryrefslogtreecommitdiff
path: root/src/save.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/save.c')
-rw-r--r--src/save.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/save.c b/src/save.c
index 28f6a2896..ef38d8b17 100644
--- a/src/save.c
+++ b/src/save.c
@@ -614,7 +614,12 @@ u16 CalculateChecksum(void *data, u16 size)
u32 checksum = 0;
for (i = 0; i < (size / 4); i++)
- checksum += *((u32 *)data)++;
+ {
+ // checksum += *(u32 *)data++;
+ // For compatibility with modern gcc, these statements were separated.
+ checksum += *(u32 *)data;
+ data += 4;
+ }
return ((checksum >> 16) + checksum);
}