[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Exception when subject class extends a library class



Hi Ondrej,

Thank you very much for your prompt response. The bug fix has worked and my program runs without a hitch.

Thanks again,

Neil

Ondrej Lhotak wrote:

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')