diff options
author | aclement <aclement> | 2004-02-09 15:07:37 +0000 |
---|---|---|
committer | aclement <aclement> | 2004-02-09 15:07:37 +0000 |
commit | 775d1175b7da80535cc48d22cb424239d76594bf (patch) | |
tree | 85ffa3bc3b3d9a88240e81a889285ed25801414e /weaver | |
parent | 481165a816d3209bed1b07b996a3b8f043140fd4 (diff) | |
download | aspectj-775d1175b7da80535cc48d22cb424239d76594bf.tar.gz aspectj-775d1175b7da80535cc48d22cb424239d76594bf.zip |
Fix for Bugzilla Bug 50641
Better binary compatibility for advice method names
- I've run the tests a thousand times and they all pass, I'm still nervous about this first big commit though *gulp*
Diffstat (limited to 'weaver')
-rw-r--r-- | weaver/src/org/aspectj/weaver/NameMangler.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/weaver/src/org/aspectj/weaver/NameMangler.java b/weaver/src/org/aspectj/weaver/NameMangler.java index 7db5107ce..e73973541 100644 --- a/weaver/src/org/aspectj/weaver/NameMangler.java +++ b/weaver/src/org/aspectj/weaver/NameMangler.java @@ -89,13 +89,17 @@ public class NameMangler { } - /** * The name of methods corresponding to advice declarations + * Of the form: "ajc$[AdviceKind]$[AspectName]$[NumberOfAdviceInAspect]$[PointcutHash]" */ - public static String adviceName(TypeX aspectType, AdviceKind kind, int position) { - return makeName(kind.getName(), aspectType.getNameAsIdentifier(), - Integer.toHexString(position)); + public static String adviceName(TypeX aspectType, AdviceKind kind, int adviceSeqNumber,int pcdHash) { + String newname = makeName( + kind.getName(), + aspectType.getNameAsIdentifier(), + Integer.toString(adviceSeqNumber), + Integer.toHexString(pcdHash)); + return newname; } /** |