Parcourir la source

more overweaving tests and fixes: cflow

tags/V1_6_9M2
aclement il y a 14 ans
Parent
révision
461888cce1

+ 5
- 0
weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java Voir le fichier

@@ -422,6 +422,7 @@ class BcelClassWeaver implements IClassWeaver {
isChanged = true;
}

WeaverStateInfo typeWeaverState = (world.isOverWeaving() ? getLazyClassGen().getType().getWeaverState() : null);
// start by munging all typeMungers
for (ConcreteTypeMunger o : typeMungers) {
if (!(o instanceof BcelTypeMunger)) {
@@ -429,6 +430,10 @@ class BcelClassWeaver implements IClassWeaver {
continue;
}
BcelTypeMunger munger = (BcelTypeMunger) o;

if (typeWeaverState != null && typeWeaverState.isAspectAlreadyApplied(munger.getAspectType())) {
continue;
}
boolean typeMungerAffectedType = munger.munge(this);
if (typeMungerAffectedType) {
isChanged = true;

+ 1
- 1
weaver/src/org/aspectj/weaver/bcel/BcelWeaver.java Voir le fichier

@@ -1997,7 +1997,7 @@ public class BcelWeaver {
} else {
for (ShadowMunger munger : list) {
if (typeWeaverState != null) { // will only be null if overweaving is ON and there is weaverstate
ResolvedType declaringAspect = munger.getDeclaringType();
ResolvedType declaringAspect = munger.getConcreteAspect();// getDeclaringType();
if (typeWeaverState.isAspectAlreadyApplied(declaringAspect)) {
continue;
}

Chargement…
Annuler
Enregistrer