immibis / bearded-octo-nemesis

Now 99.9% fat free!
128 stars 31 forks source link

deobfuscation of overridden fields. #2

Closed Xfel closed 12 years ago

Xfel commented 12 years ago

I tried to deobfuscate computercraft 1.42pr1 with the latest version (joined mode) and found a strange error:

It seems that the class GuiTerminal, which inherits from GuiButton, has two public int fields width and height. These fields are hiding the protected fields width and height of the GuiButton class. The obfuscator renamed the fields in GuiButton to a and b, and the fields in GuiTermial were renamed to. The deobfuscator changed all references to these fields back to the real names, but the fields themselves hadn't been renamed, so every instruction trying to access GuiTermial.width now actually accesses GuiButton.width. As that field is not public, it produces a runtime "Field not visible" error.

Xfel commented 12 years ago

Is fixed now.