Python3 try/except handling improvements. Add Walker exception and use

that: fixes erroneous uncompyle success message on parse error.
This commit is contained in:
rocky
2015-12-26 00:12:02 -05:00
parent 0409cee6a9
commit fe9c8d5734
7 changed files with 74 additions and 35 deletions

View File

@@ -27,8 +27,10 @@ def uncompyle(version, co, out=None, showasm=False, showast=False,
try:
pysource.deparse_code(version, co, out, showasm, showast, showgrammar)
except pysource.ParserError as e : # parser failed, dump disassembly
print(e, file=real_out)
except pysource.WalkerError as e:
# deparsing failed
if real_out != out:
print(e, file=real_out)
raise
def uncompyle_file(filename, outstream=None, showasm=False, showast=False,