aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archival/unzip.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/archival/unzip.c b/archival/unzip.c
index e4c824850..c250d7555 100644
--- a/archival/unzip.c
+++ b/archival/unzip.c
@@ -163,7 +163,14 @@ enum { zip_fd = 3 };
163 163
164#if ENABLE_DESKTOP 164#if ENABLE_DESKTOP
165 165
166#define PEEK_FROM_END 16384 166/* Seen in the wild:
167 * Self-extracting PRO2K3XP_32.exe contains 19078464 byte zip archive,
168 * where CDE was nearly 48 kbytes before EOF.
169 * (Surprisingly, it also apparently has *another* CDE structure
170 * closer to the end, with bogus cdf_offset).
171 * To make extraction work, bumped PEEK_FROM_END from 16k to 64k.
172 */
173#define PEEK_FROM_END (64*1024)
167 174
168/* NB: does not preserve file position! */ 175/* NB: does not preserve file position! */
169static uint32_t find_cdf_offset(void) 176static uint32_t find_cdf_offset(void)