On Tue, Jul 27, 2004 at 09:33:51PM +0100, Neil Walkinshaw wrote:
I have attached GizmoGui$1.class as you requested. I have also attached
GizmoGui.class and the source code. If you need the rest of the app to
satisfy any dependencies the class has, I can send you the jar file,
it's only 170k.
Thanks.
The problem was incorrect handling of the case when the local variable
name table is missing an entry for a certain local. In this case, the
variable was one that was generated by javac to pass the outer class
into the anonymous inner class, and since it was generated, it had no
name and therefore no table entry.
The attached patch fixes the problem in both soot-2.1.0 and on the
trunk. To apply it, in your soot directory (one with src in it), do:
patch -p0 < /tmp/patch.txt
I've committed it as revision 1668 and it will be included in the next
release of Soot.
Ondrej
Thanks alot for your help,
best regards,
Neil
------------------------------------------------------------------------
Index: src/soot/coffi/Util.java
===================================================================
--- src/soot/coffi/Util.java (revision 1664)
+++ src/soot/coffi/Util.java (working copy)
@@ -770,6 +770,7 @@
* @author Patrick Lam
*/
boolean isValidJimpleName(String prospectiveName) {
+ if(prospectiveName == null) return false;
for (int i = 0; i < prospectiveName.length(); i++) {
char c = prospectiveName.charAt(i);
if (i == 0 && c >= '0' && c <= '9')