aboutsummaryrefslogtreecommitdiff
path: root/src/SFileOpenArchive.cpp
diff options
context:
space:
mode:
authorLadislav Zezula <zezula@volny.cz>2023-12-30 08:59:09 +0100
committerLadislav Zezula <zezula@volny.cz>2023-12-30 08:59:09 +0100
commit909ff807e78b0b92afffaf0d5ed7149982d8ac33 (patch)
tree0b819048623265303dc22374831cc1f84be6f328 /src/SFileOpenArchive.cpp
parent2e3882409954eb1a3a7830df7d117cd16773fda7 (diff)
Regression tests passed
Diffstat (limited to 'src/SFileOpenArchive.cpp')
-rw-r--r--src/SFileOpenArchive.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/SFileOpenArchive.cpp b/src/SFileOpenArchive.cpp
index baad848..4b2d3b4 100644
--- a/src/SFileOpenArchive.cpp
+++ b/src/SFileOpenArchive.cpp
@@ -463,6 +463,11 @@ bool WINAPI SFileOpenArchive(
if(IsStarcraftBetaArchive(ha->pHeader))
ha->dwFlags |= MPQ_FLAG_STARCRAFT_BETA;
+ // Set the mask for the file offset. In MPQs version 1,
+ // all offsets are 32-bit and overflow is allowed.
+ // For MPQs v2+, file offset if 64-bit.
+ ha->FileOffsetMask = GetFileOffsetMask(ha);
+
// Maps from StarCraft and Warcraft III need special treatment
switch(MapType)
{