aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/tools/python3/Lib/zipfile/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/tools/python3/Lib/zipfile/__init__.py')
-rw-r--r--contrib/tools/python3/Lib/zipfile/__init__.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/contrib/tools/python3/Lib/zipfile/__init__.py b/contrib/tools/python3/Lib/zipfile/__init__.py
index 91358156bc..cf71c6dba2 100644
--- a/contrib/tools/python3/Lib/zipfile/__init__.py
+++ b/contrib/tools/python3/Lib/zipfile/__init__.py
@@ -295,7 +295,7 @@ def _EndRecData(fpin):
fpin.seek(-sizeEndCentDir, 2)
except OSError:
return None
- data = fpin.read()
+ data = fpin.read(sizeEndCentDir)
if (len(data) == sizeEndCentDir and
data[0:4] == stringEndArchive and
data[-2:] == b"\000\000"):
@@ -315,9 +315,9 @@ def _EndRecData(fpin):
# record signature. The comment is the last item in the ZIP file and may be
# up to 64K long. It is assumed that the "end of central directory" magic
# number does not appear in the comment.
- maxCommentStart = max(filesize - (1 << 16) - sizeEndCentDir, 0)
+ maxCommentStart = max(filesize - ZIP_MAX_COMMENT - sizeEndCentDir, 0)
fpin.seek(maxCommentStart, 0)
- data = fpin.read()
+ data = fpin.read(ZIP_MAX_COMMENT + sizeEndCentDir)
start = data.rfind(stringEndArchive)
if start >= 0:
# found the magic number; attempt to unpack and interpret