summaryrefslogtreecommitdiffstats
path: root/weaver/src
diff options
context:
space:
mode:
authoraclement <aclement>2004-04-07 12:58:47 +0000
committeraclement <aclement>2004-04-07 12:58:47 +0000
commitc2b5871a6d0f6c7620421482a8438bcafc9f9ee8 (patch)
treee387901e332461c100427e9452ff631cb6afe475 /weaver/src
parente7ac54fae25b797a0d3609350a27330bea302fb9 (diff)
downloadaspectj-c2b5871a6d0f6c7620421482a8438bcafc9f9ee8.tar.gz
aspectj-c2b5871a6d0f6c7620421482a8438bcafc9f9ee8.zip
Some of the fix for Bugzilla Bug 57432
NPE when creating declare messages [Allow for null targeters - for example when the class file has no debug info in it]
Diffstat (limited to 'weaver/src')
-rw-r--r--weaver/src/org/aspectj/weaver/bcel/BcelShadow.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelShadow.java b/weaver/src/org/aspectj/weaver/bcel/BcelShadow.java
index fc5c0c1a8..ca41e2aec 100644
--- a/weaver/src/org/aspectj/weaver/bcel/BcelShadow.java
+++ b/weaver/src/org/aspectj/weaver/bcel/BcelShadow.java
@@ -438,13 +438,15 @@ public class BcelShadow extends Shadow {
int slot = ((StoreInstruction)startOfHandler.getInstruction()).getIndex();
//System.out.println("got store: " + startOfHandler.getInstruction() + ", " + index);
InstructionTargeter[] targeters = startOfHandler.getNext().getTargeters();
- for (int i=targeters.length-1; i >= 0; i--) {
- if (targeters[i] instanceof LocalVariableTag) {
- LocalVariableTag t = (LocalVariableTag)targeters[i];
- if (t.getSlot() == slot) {
- return t.getName();
+ if (targeters!=null) {
+ for (int i=targeters.length-1; i >= 0; i--) {
+ if (targeters[i] instanceof LocalVariableTag) {
+ LocalVariableTag t = (LocalVariableTag)targeters[i];
+ if (t.getSlot() == slot) {
+ return t.getName();
+ }
+ //System.out.println("tag: " + targeters[i]);
}
- //System.out.println("tag: " + targeters[i]);
}
}
}