diff --git a/src/saveload/saveload.cpp b/src/saveload/saveload.cpp index f2cce1b9d5..3579db5d9d 100644 --- a/src/saveload/saveload.cpp +++ b/src/saveload/saveload.cpp @@ -2110,7 +2110,7 @@ static void SlLoadChunk(const ChunkHandler &ch) /* The header should always be at the start. Read the length; the * Load() should as first action process the header. */ if (_sl.expect_table_header) { - SlIterateArray(); + if (SlIterateArray() != INT32_MAX) SlErrorCorrupt("Table chunk without header"); } switch (_sl.block_mode) { @@ -2163,7 +2163,7 @@ static void SlLoadCheckChunk(const ChunkHandler &ch) /* The header should always be at the start. Read the length; the * LoadCheck() should as first action process the header. */ if (_sl.expect_table_header) { - SlIterateArray(); + if (SlIterateArray() != INT32_MAX) SlErrorCorrupt("Table chunk without header"); } switch (_sl.block_mode) {