proguard-assembler icon indicating copy to clipboard operation
proguard-assembler copied to clipboard

Fix assembling disassembled files failing

Open MaartenS11 opened this issue 1 year ago • 0 comments

I noticed that a file disassembled with Proguard Assembler cannot be assembled again, it results in a ParseException. I tried tracing the source of this issue and it appears to be that the disassembler outputs fully qualified types for some things while the parser does not. An example of this is the switch case at line 570 of pga-lib/src/main/java/com/guardsquare/proguard/assembler/Parser.java, it makes use of AssemblyConstants.TYPE_METHOD_HANDLE which is defined as just "MethodHandle".

This PR attempts to resolve the issues that come from trying to reassemble files first disassembled using the disassembler by adjusting some of these constants to use the fully qualified names.

I have currently placed this PR in draft because I don't really know how correct this really is as I have only briefly looked at the code trying to figure out the issue.

MaartenS11 avatar Jul 12 '23 21:07 MaartenS11