[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] fix for bug #85
Hi,
I reported a bug and then found a fix, but can't seem to update
the bug in the bug DB. So here's the fix (at least it seems to
work) for bug #85.
The fix is: if INVOKEVIRUTAL or INVOKEINTERFACE specifies a method
of an array class, replace the array class name with "java.lang.Object"
and proceed.
Thanks,
-Archie
__________________________________________________________________________
Archie Cobbs * Halloo Communications * http://www.halloo.com
diff -ur --new-file soot-2.1.0.orig/src/soot/coffi/CFG.java soot-2.1.0/src/soot/coffi/CFG.java
--- soot-2.1.0.orig/src/soot/coffi/CFG.java 2003-12-18 11:43:05.000000000 -0600
+++ soot-2.1.0/src/soot/coffi/CFG.java 2004-01-27 21:17:22.000000000 -0600
@@ -4431,6 +4431,9 @@
String methodDescriptor = ((CONSTANT_Utf8_info) (constant_pool[i.descriptor_index])).
convert();
+ if (className.charAt(0) == '[')
+ className = "java.lang.Object";
+
SootClass bclass = cm.getSootClass(className);
Local[] parameters;
@@ -4660,6 +4663,9 @@
String methodDescriptor = ((CONSTANT_Utf8_info) (constant_pool[i.descriptor_index])).
convert();
+ if (className.charAt(0) == '[')
+ className = "java.lang.Object";
+
SootClass bclass = cm.getSootClass(className);
Local[] parameters;