aboutsummaryrefslogtreecommitdiff
path: root/src/SFileReadFile.cpp
diff options
context:
space:
mode:
authorLadislav Zezula <ladislav.zezula@avast.com>2022-05-12 15:44:15 +0200
committerLadislav Zezula <ladislav.zezula@avast.com>2022-05-12 15:44:15 +0200
commit4321c59d8431eaf72d7b36c047859b72bca02318 (patch)
tree2f7a46599df9b7526d3c92ce319c6aeb6954bd4f /src/SFileReadFile.cpp
parent460354d98bc266507befe517f9f246d3b952abc9 (diff)
Added implementation of Srarctaft I BETA ADPCM decompression
Diffstat (limited to 'src/SFileReadFile.cpp')
-rw-r--r--src/SFileReadFile.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/SFileReadFile.cpp b/src/SFileReadFile.cpp
index 6ec04f3..8031ba7 100644
--- a/src/SFileReadFile.cpp
+++ b/src/SFileReadFile.cpp
@@ -173,9 +173,16 @@ static DWORD ReadMpqSectors(TMPQFile * hf, LPBYTE pbBuffer, DWORD dwByteOffset,
// Decompress the data
if(ha->pHeader->wFormatVersion >= MPQ_FORMAT_VERSION_2)
+ {
nResult = SCompDecompress2(pbOutSector, &cbOutSector, pbInSector, cbInSector);
+ }
else
- nResult = SCompDecompress(pbOutSector, &cbOutSector, pbInSector, cbInSector);
+ {
+ if(ha->dwFlags & MPQ_FLAG_STARCRAFT_BETA)
+ nResult = SCompDecompress_SC1B(pbOutSector, &cbOutSector, pbInSector, cbInSector);
+ else
+ nResult = SCompDecompress(pbOutSector, &cbOutSector, pbInSector, cbInSector);
+ }
}
// Is the file compressed by PKWARE Data Compression Library ?