From: aclement Date: Thu, 17 Jul 2008 17:10:05 +0000 (+0000) Subject: 239441 - testcode and fix X-Git-Tag: V162DEV_M1~169 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=df587ce7e378af478e7ee4eca3e998ea728ab05d;p=aspectj.git 239441 - testcode and fix --- diff --git a/weaver/src/org/aspectj/weaver/patterns/SignaturePattern.java b/weaver/src/org/aspectj/weaver/patterns/SignaturePattern.java index 059711640..831457cb2 100644 --- a/weaver/src/org/aspectj/weaver/patterns/SignaturePattern.java +++ b/weaver/src/org/aspectj/weaver/patterns/SignaturePattern.java @@ -344,9 +344,13 @@ public class SignaturePattern extends PatternNode { } if (matchesIgnoringAnnotations.alwaysFalse()) return FuzzyBoolean.NO; + // why did Adrian put this comment in: // annotations match on the *subject* - if (subjectMatch && !matchesAnnotations(aMember,inAWorld).alwaysTrue()) { - return FuzzyBoolean.NO; + // surely you never want execution(@Something * *(..)) to match something just because + // it is a secondary join point signature for a join point and doesn't have the annotation? + // pr239441 + if (matchesIgnoringAnnotations.alwaysTrue()) { + return matchesAnnotations(aMember,inAWorld); } else { return matchesIgnoringAnnotations; }