From 9a69fa655c663c09009726ab0f1ad9e67325ccaa Mon Sep 17 00:00:00 2001 From: 周伟奇 <zhouweiqi@situdata.com> Date: Fri, 20 Mar 2020 18:16:03 +0800 Subject: [PATCH] fix decode bug --- zipfiles/__init__.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/zipfiles/__init__.py b/zipfiles/__init__.py index 8ec20cf..cb91456 100644 --- a/zipfiles/__init__.py +++ b/zipfiles/__init__.py @@ -1210,11 +1210,11 @@ class ZipFile: filename = filename.decode('utf-8') else: # Historical ZIP filename encoding - filename = filename.decode('cp437') + # filename = filename.decode('cp437') try: - filename = filename.encode("cp437").decode('gbk') + filename = filename.decode('utf-8') except: - pass + filename = filename.decode("gbk") # Create ZipInfo instance to store file information x = ZipInfo(filename) x.extra = fp.read(centdir[_CD_EXTRA_FIELD_LENGTH]) @@ -1392,11 +1392,11 @@ class ZipFile: # UTF-8 filename fname_str = fname.decode("utf-8") else: - fname_str = fname.decode("cp437") + # fname_str = fname.decode("cp437") try: - fname_str = fname_str.encode("cp437").decode('gbk') + fname_str = fname.decode("utf-8") except: - pass + fname_str = fname.decode("gbk") if fname_str != zinfo.orig_filename: raise BadZipFile( -- libgit2 0.24.0