From 350d03b18aeadc2292866a9df5a38cfa58785e10 Mon Sep 17 00:00:00 2001 From: "Gregory P. Smith" Date: Sat, 19 Jan 2008 23:10:52 +0000 Subject: [PATCH] Fixes/Accepts Patch for issue1189216 - Work properly with archives that have file headers past the 2**31 byte boundary. --- Lib/zipfile.py | 4 ++-- Misc/NEWS | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Lib/zipfile.py b/Lib/zipfile.py index 471cffc986e..eb00b34daa4 100644 --- a/Lib/zipfile.py +++ b/Lib/zipfile.py @@ -32,9 +32,9 @@ ZIP_DEFLATED = 8 # Other ZIP compression methods not supported # Here are some struct module formats for reading headers -structEndArchive = "<4s4H2lH" # 9 items, end of archive, 22 bytes +structEndArchive = "<4s4H2LH" # 9 items, end of archive, 22 bytes stringEndArchive = "PK\005\006" # magic number for end of archive record -structCentralDir = "<4s4B4HlLL5HLl"# 19 items, central directory, 46 bytes +structCentralDir = "<4s4B4HlLL5HLL"# 19 items, central directory, 46 bytes stringCentralDir = "PK\001\002" # magic number for central directory structFileHeader = "<4s2B4HlLL2H" # 12 items, file header record, 30 bytes stringFileHeader = "PK\003\004" # magic number for file header diff --git a/Misc/NEWS b/Misc/NEWS index a068876bad4..e988fc73010 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -369,6 +369,9 @@ Core and builtins Library ------- +- #1189216: Fix the zipfile module to work on archives with headers + past the 2**31 byte boundary. + - #1336: fix a race condition in subprocess.Popen if the garbage collector kicked in at the wrong time that would cause the process to hang when the child wrote to stderr.