Skip to main content
summaryrefslogtreecommitdiffstats
path: root/debug
diff options
context:
space:
mode:
authorMikhail Khodjaiants2003-09-10 21:23:38 +0000
committerMikhail Khodjaiants2003-09-10 21:23:38 +0000
commit86bd34cb790a8516af8ce4671864d5e3620871e8 (patch)
treeffe6438e9bf09b9763116110219beacb3b5102f2 /debug
parent6f2e1a8f42cb0a8574dd0a17d25d4ad9f6a9cb58 (diff)
downloadorg.eclipse.cdt-86bd34cb790a8516af8ce4671864d5e3620871e8.tar.gz
org.eclipse.cdt-86bd34cb790a8516af8ce4671864d5e3620871e8.tar.xz
org.eclipse.cdt-86bd34cb790a8516af8ce4671864d5e3620871e8.zip
If breakpoint is a line breakpoint check if source locator contains the file instead of container project.
Diffstat (limited to 'debug')
-rw-r--r--debug/org.eclipse.cdt.debug.core/ChangeLog5
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java34
2 files changed, 28 insertions, 11 deletions
diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog b/debug/org.eclipse.cdt.debug.core/ChangeLog
index 8155cfc201e..0f418193b85 100644
--- a/debug/org.eclipse.cdt.debug.core/ChangeLog
+++ b/debug/org.eclipse.cdt.debug.core/ChangeLog
@@ -1,4 +1,9 @@
2003-09-10 Mikhail Khodjaiants
+ If breakpoint is a line breakpoint check if source locator contains this file
+ instead of container project.
+ * CDebugTarget.java
+
+2003-09-10 Mikhail Khodjaiants
Fix for PR 42790: Memory view is not cleared when target is terminated.
* CFormattedMemoryBlock.java: fire 'terminate' event when block is disposing.
* CMemoryManager.java: implementation of 'dispose'.
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
index 6f71923ee5d..4767e9c2f92 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
@@ -88,6 +88,7 @@ import org.eclipse.cdt.debug.internal.core.sourcelookup.DisassemblyManager;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarkerDelta;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IResourceChangeListener;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IAdaptable;
@@ -394,25 +395,36 @@ public class CDebugTarget extends CDebugElement
private boolean isTargetBreakpoint( IBreakpoint bp )
{
- IProject project = bp.getMarker().getResource().getProject();
- if ( project != null && project.exists() )
- {
+ IResource resource = bp.getMarker().getResource();
+ if ( bp instanceof ICLineBreakpoint )
+ {
if ( getSourceLocator() instanceof IAdaptable )
{
ICSourceLocator sl = (ICSourceLocator)((IAdaptable)getSourceLocator()).getAdapter( ICSourceLocator.class );
if ( sl != null )
- {
- return sl.contains( project );
- }
+ return sl.contains( resource );
}
- else
+ }
+ else
+ {
+ IProject project = resource.getProject();
+ if ( project != null && project.exists() )
{
- if ( project.equals( getExecFile().getProject() ) )
- return true;
- return CDebugUtils.isReferencedProject( getExecFile().getProject(), project );
+ if ( getSourceLocator() instanceof IAdaptable )
+ {
+ ICSourceLocator sl = (ICSourceLocator)((IAdaptable)getSourceLocator()).getAdapter( ICSourceLocator.class );
+ if ( sl != null )
+ return sl.contains( project );
+ }
+ else
+ {
+ if ( project.equals( getExecFile().getProject() ) )
+ return true;
+ return CDebugUtils.isReferencedProject( getExecFile().getProject(), project );
+ }
}
}
- return false;
+ return true;
}
protected void initializeRegisters()

Back to the top