diff options
author | aclement <aclement> | 2009-04-07 22:20:27 +0000 |
---|---|---|
committer | aclement <aclement> | 2009-04-07 22:20:27 +0000 |
commit | ac617315a816e78b45da02ce4cc9bc006770aa8f (patch) | |
tree | fc4ec1f7317be30bafa6b06c3032eaa117413708 | |
parent | fc60b23c788601d1d44ac01dd20fa9f2eded51d6 (diff) | |
download | aspectj-ac617315a816e78b45da02ce4cc9bc006770aa8f.tar.gz aspectj-ac617315a816e78b45da02ce4cc9bc006770aa8f.zip |
271201: inpath handles for jars
-rw-r--r-- | org.aspectj.matcher/src/org/aspectj/weaver/ShadowMunger.java | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/ShadowMunger.java b/org.aspectj.matcher/src/org/aspectj/weaver/ShadowMunger.java index 0500d6f09..39cac57c3 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/ShadowMunger.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/ShadowMunger.java @@ -178,16 +178,20 @@ public abstract class ShadowMunger implements PartialOrder.PartialComparable, IH private File getBinaryFile() { if (binaryFile == null) { String s = getDeclaringType().getBinaryPath(); - File f = getDeclaringType().getSourceLocation().getSourceFile(); - // Replace the source file suffix with .class - int i = f.getPath().lastIndexOf('.'); - String path = null; - if (i != -1) { - path = f.getPath().substring(0, i) + ".class"; + if (s.indexOf("!")==-1) { + File f = getDeclaringType().getSourceLocation().getSourceFile(); + // Replace the source file suffix with .class + int i = f.getPath().lastIndexOf('.'); + String path = null; + if (i != -1) { + path = f.getPath().substring(0, i) + ".class"; + } else { + path = f.getPath() + ".class"; + } + binaryFile = new File(s + "!" + path); } else { - path = f.getPath() + ".class"; + binaryFile = new File(s); } - binaryFile = new File(s + "!" + path); } return binaryFile; } |