diff options
author | aclement <aclement> | 2010-07-12 19:21:06 +0000 |
---|---|---|
committer | aclement <aclement> | 2010-07-12 19:21:06 +0000 |
commit | b390592ea35dce3207ea6a4c85a240447284f539 (patch) | |
tree | e55dec8781b4e52e1a58b2f3094d265e207a547c /org.aspectj.matcher/src | |
parent | fdbd12e319a0c18c40906780b372fa3cfb573fe4 (diff) | |
download | aspectj-b390592ea35dce3207ea6a4c85a240447284f539.tar.gz aspectj-b390592ea35dce3207ea6a4c85a240447284f539.zip |
319431: test+fix: reweavable state names and signatures
Diffstat (limited to 'org.aspectj.matcher/src')
-rw-r--r-- | org.aspectj.matcher/src/org/aspectj/weaver/WeaverStateInfo.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/WeaverStateInfo.java b/org.aspectj.matcher/src/org/aspectj/weaver/WeaverStateInfo.java index 0ce6c5c46..626927db5 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/WeaverStateInfo.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/WeaverStateInfo.java @@ -27,6 +27,7 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; import org.aspectj.bridge.IMessage; +import org.aspectj.weaver.AjAttribute.WeaverVersionInfo; /** * WeaverStateInfo represents how a type was processed. It is used by the weaver to determine how a type was previously treated and @@ -300,9 +301,14 @@ public class WeaverStateInfo { str = s.readSignature(); } else { str = s.readUTF(); - // StringBuilder sb = new StringBuilder(); - // sb.append("L").append(str.replace('.', '/')).append(";"); - // str = sb.toString(); + // Prior to 1.6.9 we were writing out names (com.foo.Bar) rather than signatures (Lcom/foo/Bar;) + // From 1.6.9 onwards we write out signatures (pr319431) + if (s.getMajorVersion() < WeaverVersionInfo.WEAVER_VERSION_AJ169) { + // It is a name, make it a signature + StringBuilder sb = new StringBuilder(); + sb.append("L").append(str.replace('.', '/')).append(";"); + str = sb.toString(); + } } wsi.addAspectAffectingType(str); } |