mirror of
https://github.com/nvbn/thefuck.git
synced 2025-02-20 20:09:07 +00:00
Merge pull request #419 from mcarton/fix-unzip
Fix the `dirty_unzip` rule
This commit is contained in:
commit
a0ef0efe46
@ -19,7 +19,6 @@ def _is_tar_extract(cmd):
|
||||
|
||||
|
||||
def _tar_file(cmd):
|
||||
|
||||
for c in cmd:
|
||||
for ext in tar_extensions:
|
||||
if c.endswith(ext):
|
||||
|
@ -5,8 +5,11 @@ from thefuck.shells import quote
|
||||
|
||||
|
||||
def _is_bad_zip(file):
|
||||
with zipfile.ZipFile(file, 'r') as archive:
|
||||
return len(archive.namelist()) > 1
|
||||
try:
|
||||
with zipfile.ZipFile(file, 'r') as archive:
|
||||
return len(archive.namelist()) > 1
|
||||
except:
|
||||
return False
|
||||
|
||||
|
||||
def _zip_file(command):
|
||||
@ -24,8 +27,14 @@ def _zip_file(command):
|
||||
|
||||
@for_app('unzip')
|
||||
def match(command):
|
||||
return ('-d' not in command.script
|
||||
and _is_bad_zip(_zip_file(command)))
|
||||
if '-d' in command.script:
|
||||
return False
|
||||
|
||||
zip_file = _zip_file(command)
|
||||
if zip_file:
|
||||
return _is_bad_zip(zip_file)
|
||||
else:
|
||||
return False
|
||||
|
||||
|
||||
def get_new_command(command):
|
||||
|
Loading…
x
Reference in New Issue
Block a user