]> granicus.if.org Git - python/commitdiff
bpo-22102: Fixes zip files with disks set to 0 (GH-5985)
authorFrancisco Facioni <fran6co@gmail.com>
Tue, 28 May 2019 23:15:11 +0000 (00:15 +0100)
committerCheryl Sabella <cheryl.sabella@gmail.com>
Tue, 28 May 2019 23:15:11 +0000 (19:15 -0400)
Lib/zipfile.py
Misc/NEWS.d/next/Library/2018-03-08-16-15-00.bpo-22102.th33uD.rst [new file with mode: 0644]

index 8f8cb863b003430e9071b8306c758ba1200ba3ba..5496f6eb18678bded7bb74e8e7f9c00bc7c581b7 100644 (file)
@@ -226,7 +226,7 @@ def _EndRecData64(fpin, offset, endrec):
     if sig != stringEndArchive64Locator:
         return endrec
 
-    if diskno != 0 or disks != 1:
+    if diskno != 0 or disks > 1:
         raise BadZipFile("zipfiles that span multiple disks are not supported")
 
     # Assume no 'zip64 extensible data'
diff --git a/Misc/NEWS.d/next/Library/2018-03-08-16-15-00.bpo-22102.th33uD.rst b/Misc/NEWS.d/next/Library/2018-03-08-16-15-00.bpo-22102.th33uD.rst
new file mode 100644 (file)
index 0000000..ad690f5
--- /dev/null
@@ -0,0 +1,2 @@
+Added support for ZIP files with disks set to 0. Such files are commonly created by builtin tools on Windows when use ZIP64 extension.
+Patch by Francisco Facioni.