aboutsummaryrefslogtreecommitdiffstats
path: root/weaver
diff options
context:
space:
mode:
Diffstat (limited to 'weaver')
-rw-r--r--weaver/src/org/aspectj/weaver/PerObjectInterfaceTypeMunger.java2
-rw-r--r--weaver/src/org/aspectj/weaver/patterns/PerObject.java2
2 files changed, 3 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/PerObjectInterfaceTypeMunger.java b/weaver/src/org/aspectj/weaver/PerObjectInterfaceTypeMunger.java
index a9f885d0c..512f9ca4f 100644
--- a/weaver/src/org/aspectj/weaver/PerObjectInterfaceTypeMunger.java
+++ b/weaver/src/org/aspectj/weaver/PerObjectInterfaceTypeMunger.java
@@ -97,6 +97,8 @@ public class PerObjectInterfaceTypeMunger extends ResolvedTypeMunger {
// FIXME AV - #75442 see thread
// back off on old style : it can happen for perTarget that target type is presented first to the weaver
// while caller side is not thus we have advisedTypeToAspects still empty..
+
+ // note: needed only for perTarget if lateMunger is used (see PerObject)
return !matchType.isInterface() && !matchType.isAnnotationStyleAspect();
} else {
return aspects.contains(aspectType);
diff --git a/weaver/src/org/aspectj/weaver/patterns/PerObject.java b/weaver/src/org/aspectj/weaver/patterns/PerObject.java
index 45602d386..aec9f7f4d 100644
--- a/weaver/src/org/aspectj/weaver/patterns/PerObject.java
+++ b/weaver/src/org/aspectj/weaver/patterns/PerObject.java
@@ -109,7 +109,7 @@ public class PerObject extends PerClause {
// see #75442 thread. Issue with weaving order.
ResolvedTypeMunger munger =
new PerObjectInterfaceTypeMunger(inAspect, concreteEntry);
- inAspect.crosscuttingMembers.addTypeMunger(world.concreteTypeMunger(munger, inAspect));
+ inAspect.crosscuttingMembers.addLateTypeMunger(world.concreteTypeMunger(munger, inAspect));
//ATAJ: add a munger to add the aspectOf(..) to the @AJ aspects
if (inAspect.isAnnotationStyleAspect()) {