CensoredUsername / unrpyc

A ren'py script decompiler
Other
861 stars 157 forks source link

Unable to decompile 00gamemenu.rpyc #95

Closed kapilgain closed 4 years ago

kapilgain commented 4 years ago

Hi,

I got this error while trying to decompile 00gamemenu.rpyc. This file is part of Ren'Py SDK (https://github.com/renpy/renpy/blob/master/renpy/common/00gamemenu.rpy).

Decompiling 00gamemenu.rpyc to 00gamemenu.rpy...
Error while decompiling 00gamemenu.rpyc:
Traceback (most recent call last):
  File "./unrpyc.py", line 164, in worker
    no_pyexpr=args.no_pyexpr, comparable=args.comparable, translator=translator, init_offset=args.init_offset)
  File "./unrpyc.py", line 137, in decompile_rpyc
    translator=translator, init_offset=init_offset)
  File "/tmp/unrpyc/decompiler/__init__.py", line 46, in pprint
    decompile_python=decompile_python, translator=translator).dump(ast, indent_level, init_offset)
  File "/tmp/unrpyc/decompiler/__init__.py", line 89, in dump
    super(Decompiler, self).dump(ast, indent_level, skip_indent_until_write=True)
  File "/tmp/unrpyc/decompiler/util.py", line 29, in dump
    self.print_nodes(ast)
  File "/tmp/unrpyc/decompiler/util.py", line 120, in print_nodes
    self.print_node(node)
  File "/tmp/unrpyc/decompiler/__init__.py", line 106, in print_node
    self.dispatch.get(type(ast), type(self).print_unknown)(self, ast)
  File "/tmp/unrpyc/decompiler/__init__.py", line 431, in print_label
    reconstruct_paraminfo(ast.parameters) if hasattr(ast, 'parameters') else '',
  File "/tmp/unrpyc/decompiler/util.py", line 201, in reconstruct_paraminfo
    if param[1] is not None:
NameError: global name 'param' is not defined

Decompilation of 1 file failed
kapilgain commented 4 years ago

I have submitted a PR into dev branch, which should resolve this. Please review.

Thanks.

jackmcbarn commented 4 years ago

I pushed it to both dev and master. Thanks for the fix!