aboutsummaryrefslogtreecommitdiffstats
path: root/org.aspectj.ajdt.core
diff options
context:
space:
mode:
authoraclement <aclement>2006-02-21 16:07:04 +0000
committeraclement <aclement>2006-02-21 16:07:04 +0000
commit89d66dc89110db0f89538a7b78308db61e5539cc (patch)
treee07ddc248ec17ef83db718f22c286584882c4cfb /org.aspectj.ajdt.core
parentba42a09551519a4b611ab06edb161ecb0c629f53 (diff)
downloadaspectj-89d66dc89110db0f89538a7b78308db61e5539cc.tar.gz
aspectj-89d66dc89110db0f89538a7b78308db61e5539cc.zip
test and fix for 128618 (from helen) - message handling.
Diffstat (limited to 'org.aspectj.ajdt.core')
-rw-r--r--org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/WeaverMessageHandler.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/WeaverMessageHandler.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/WeaverMessageHandler.java
index d44ce2ed6..8b9a9eeff 100644
--- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/WeaverMessageHandler.java
+++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/WeaverMessageHandler.java
@@ -18,6 +18,7 @@ import org.aspectj.bridge.AbortException;
import org.aspectj.bridge.IMessage;
import org.aspectj.bridge.IMessageHandler;
import org.aspectj.bridge.ISourceLocation;
+import org.aspectj.bridge.SourceLocation;
import org.aspectj.bridge.IMessage.Kind;
import org.aspectj.org.eclipse.jdt.core.compiler.IProblem;
import org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult;
@@ -62,6 +63,17 @@ public class WeaverMessageHandler implements IMessageHandler {
// throw new RuntimeException("Primary source location must match the file we are currently processing!");
}
}
+ // bug 128618 - want to do a similar thing as in bug 62073 above, however
+ // we're not an EclipseSourceLocation we're a SourceLocation.
+ if (sLoc instanceof SourceLocation) {
+ SourceLocation sl = (SourceLocation)sLoc;
+ if (currentlyWeaving != null && sl.getSourceFile() != null) {
+ if (!String.valueOf(currentlyWeaving.getFileName()).equals( sl.getSourceFile().getAbsolutePath())) {
+ return sink.handleMessage(message);
+ //throw new RuntimeException("Primary source location must match the file we are currently processing!");
+ }
+ }
+ }
CompilationResult problemSource = currentlyWeaving;
if (problemSource == null) {