Skip to content

Commit 6b63689

Browse files
Fix tests
1 parent 97db96c commit 6b63689

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

Lib/zipfile/__init__.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,12 @@
1414
import threading
1515
import time
1616

17-
import zlib
18-
crc32 = zlib.crc32
17+
try:
18+
import zlib
19+
crc32 = zlib.crc32
20+
except ImportError:
21+
zlib = None
22+
crc32 = binascii.crc32
1923

2024
try:
2125
import bz2 # We may need its compression method
@@ -767,8 +771,12 @@ def decompress(self, data):
767771
}
768772

769773
def _check_compression(compression):
770-
if compression in (ZIP_STORED, ZIP_DEFLATED):
774+
if compression == ZIP_STORED:
771775
pass
776+
elif compression == ZIP_DEFLATED:
777+
if not zlib:
778+
raise RuntimeError(
779+
"Compression requires the (missing) zlib module")
772780
elif compression == ZIP_BZIP2:
773781
if not bz2:
774782
raise RuntimeError(

0 commit comments

Comments
 (0)