From df587ce7e378af478e7ee4eca3e998ea728ab05d Mon Sep 17 00:00:00 2001 From: aclement Date: Thu, 17 Jul 2008 17:10:05 +0000 Subject: [PATCH] 239441 - testcode and fix --- .../src/org/aspectj/weaver/patterns/SignaturePattern.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) 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; } -- 2.39.5