Closed qmc2 closed 2 years ago
It has something to do with the data type changes unzGetCurrentFileInfo takes. I hardcoded 32767 instead of QMC2_ROMALYZER_ZIP_BUFFER_SIZE and names are showing now. Without this change, the cast in mz_compat.c line 980 fails.
diff --git a/src/macros.h b/src/macros.h
index 2d1c5f30c..375ce1c31 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -359,7 +359,7 @@
#define QMC2_SEARCH_TIMEOUT 2500
// buffer size for reading zip-files
-#define QMC2_ZIP_BUFFER_SIZE QMC2_64K
+#define QMC2_ZIP_BUFFER_SIZE QMC2_64K - 1
// buffer size for reading regular files
#define QMC2_FILE_BUFFER_SIZE QMC2_256K
This does the trick but I have no idea how right or wrong it is. 65536 cannot be cast to uint16_t.
Oh, this sounds as if it is the right way to go... I will try later!
I halved the QMC2_ZIP_BUFFER_SIZE to QMC2_32K and the result seems good so far. Thanks!
I just found out that the "ROMAlyzer" somehow gets this on checksum scanning:
The empty names (member '' from archive) show another minizip-ng issue, probably a missing file.