I’m writing a deobfuscator, and my transformations are obviously generating something the VM doesn’t like, as I’m getting this verify error:
java.lang.VerifyError: (class: blah/blah/blah/SomeClass, method: actionPerformed signature: (Ljava/awt/event/ActionEvent;)V) Incompatible object argument for function call
Does it mean:
A) Somewhere within SomeClass.actionPerformed(…) I’m invoking a method with invalid parameters
or
B) Somewhere in my code base, I’m invoking SomeClass.actionPerformed(…) with invalid parameters.
I’d logically have thought the latter, but:
- My deobfuscator doesn’t touch the name or descriptor of actionPerformed (as it obviously isn’t obfuscated!)
- actionPerformed is obviously an awt callback method, and I’m pretty sure the code base I’m working with never invokes it itself.
Anyone with experience of this error have any ideas?