]> source.dussan.org Git - aspectj.git/commitdiff
543657: tweak to use current data rather than last known packed data
authorAndy Clement <aclement@pivotal.io>
Wed, 11 Sep 2019 16:04:15 +0000 (09:04 -0700)
committerAndy Clement <aclement@pivotal.io>
Wed, 11 Sep 2019 16:04:15 +0000 (09:04 -0700)
weaver/src/main/java/org/aspectj/weaver/bcel/BcelPerClauseAspectAdder.java

index b8ede0a9a721ab6733c76d1c47e9a920032bde9c..cca34bc12c01653ca192d114ff7ba79dc1e05b39 100644 (file)
@@ -11,6 +11,8 @@
  *******************************************************************************/
 package org.aspectj.weaver.bcel;
 
+import java.util.List;
+
 import org.aspectj.apache.bcel.Constants;
 import org.aspectj.apache.bcel.generic.InstructionBranch;
 import org.aspectj.apache.bcel.generic.InstructionConstants;
@@ -31,7 +33,7 @@ import org.aspectj.weaver.patterns.PerClause;
 
 /**
  * Adds aspectOf(), hasAspect() etc to the annotation defined aspects
- * 
+ *
  * @author Alexandre Vasseur
  * @author Andy Clement
  */
@@ -140,9 +142,8 @@ public class BcelPerClauseAspectAdder extends BcelTypeMunger {
        }
 
        private boolean hasPerClauseMembersAlready(LazyClassGen classGen) {
-               ResolvedMember[] methods = classGen.getBcelObjectType().getDeclaredMethods();
-               for (int i = 0; i < methods.length; i++) {
-                       ResolvedMember method = methods[i];
+               List<LazyMethodGen> methodGens = classGen.getMethodGens();
+               for (LazyMethodGen method: methodGens) {
                        if ("aspectOf".equals(method.getName())) {
                                if ("()".equals(method.getParameterSignature()) && (kind == PerClause.SINGLETON || kind == PerClause.PERCFLOW)) {
                                        return true;
@@ -542,7 +543,7 @@ public class BcelPerClauseAspectAdder extends BcelTypeMunger {
 
        /**
         * Add standard Synthetic (if wished) and AjSynthetic (always) attributes
-        * 
+        *
         * @param methodGen
         * @param makeJavaSynthetic true if standard Synthetic attribute must be set as well (invisible to user)
         */