Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikhail Khodjaiants2006-01-30 19:48:37 +0000
committerMikhail Khodjaiants2006-01-30 19:48:37 +0000
commit29c2e5c8da5705891d5959032922ddcc05fab2c8 (patch)
tree2617c8d620fad8f215a4762031ccd54e7195d013 /debug/org.eclipse.cdt.debug.core/src/org
parentf96f4300b08299fe78343d8fa3949b2b898f0bb3 (diff)
downloadorg.eclipse.cdt-29c2e5c8da5705891d5959032922ddcc05fab2c8.tar.gz
org.eclipse.cdt-29c2e5c8da5705891d5959032922ddcc05fab2c8.tar.xz
org.eclipse.cdt-29c2e5c8da5705891d5959032922ddcc05fab2c8.zip
Bug 125603: Debugger don't stop on breakpoints if src is linked.
Diffstat (limited to 'debug/org.eclipse.cdt.debug.core/src/org')
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java
index d25fce9532e..65a46961b16 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupDirector.java
@@ -18,7 +18,9 @@ import org.eclipse.cdt.debug.core.sourcelookup.CDirectorySourceContainer;
import org.eclipse.cdt.debug.core.sourcelookup.MappingSourceContainer;
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
@@ -62,6 +64,16 @@ public class CSourceLookupDirector extends AbstractSourceLookupDirector {
public boolean contains( ICBreakpoint breakpoint ) {
try {
String handle = breakpoint.getSourceHandle();
+ // Check if the breakpoint's resource is a link - we have to handle
+ // this case differently.
+ // See https://bugs.eclipse.org/bugs/show_bug.cgi?id=125603
+ IMarker marker = breakpoint.getMarker();
+ if ( marker != null ) {
+ IResource resource = marker.getResource();
+ if ( resource.isLinked() && resource.getLocation().toOSString().equals( handle ) ) {
+ return contains( resource.getProject() );
+ }
+ }
ISourceContainer[] containers = getSourceContainers();
for ( int i = 0; i < containers.length; ++i ) {
if ( contains( containers[i], handle ) )

Back to the top