mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-06 09:16:02 +02:00
Create an address breakpoint if the source locator can not find the file specified by gdb.
This commit is contained in:
parent
22fced57eb
commit
bcef6f180d
2 changed files with 34 additions and 16 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2003-01-30 Mikhail Khodjaiants
|
||||||
|
Create an address breakpoint if the source locator can not find the file specified by gdb.
|
||||||
|
* CDebugTarget.java
|
||||||
|
|
||||||
2003-01-29 Mikhail Khodjaiants
|
2003-01-29 Mikhail Khodjaiants
|
||||||
Managing breakpoints from the gdb console (fixes).
|
Managing breakpoints from the gdb console (fixes).
|
||||||
* CDebugModel.java
|
* CDebugModel.java
|
||||||
|
|
|
@ -1510,27 +1510,17 @@ public class CDebugTarget extends CDebugElement
|
||||||
Object sourceElement = ((ICSourceLocator)((IAdaptable)getSourceLocator()).getAdapter( ICSourceLocator.class )).findSourceElement( cdiBreakpoint.getLocation().getFile() );
|
Object sourceElement = ((ICSourceLocator)((IAdaptable)getSourceLocator()).getAdapter( ICSourceLocator.class )).findSourceElement( cdiBreakpoint.getLocation().getFile() );
|
||||||
if ( sourceElement != null && sourceElement instanceof IFile )
|
if ( sourceElement != null && sourceElement instanceof IFile )
|
||||||
{
|
{
|
||||||
ICLineBreakpoint breakpoint = CDebugModel.createLineBreakpoint( (IFile)sourceElement,
|
createLineBreakpoint( (IFile)sourceElement, cdiBreakpoint );
|
||||||
cdiBreakpoint.getLocation().getLineNumber(),
|
}
|
||||||
cdiBreakpoint.isEnabled(),
|
else if ( cdiBreakpoint.getLocation().getAddress() > 0 )
|
||||||
cdiBreakpoint.getCondition().getIgnoreCount(),
|
{
|
||||||
cdiBreakpoint.getCondition().getExpression(),
|
createAddressBreakpoint( cdiBreakpoint );
|
||||||
false );
|
|
||||||
getBreakpoints().put( breakpoint, cdiBreakpoint );
|
|
||||||
((CBreakpoint)breakpoint).register( true );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if ( cdiBreakpoint.getLocation().getAddress() > 0 )
|
else if ( cdiBreakpoint.getLocation().getAddress() > 0 )
|
||||||
{
|
{
|
||||||
ICAddressBreakpoint breakpoint = CDebugModel.createAddressBreakpoint( getExecFile(),
|
createAddressBreakpoint( cdiBreakpoint );
|
||||||
cdiBreakpoint.getLocation().getAddress(),
|
|
||||||
cdiBreakpoint.isEnabled(),
|
|
||||||
cdiBreakpoint.getCondition().getIgnoreCount(),
|
|
||||||
cdiBreakpoint.getCondition().getExpression(),
|
|
||||||
false );
|
|
||||||
getBreakpoints().put( breakpoint, cdiBreakpoint );
|
|
||||||
((CBreakpoint)breakpoint).register( true );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch( CDIException e )
|
catch( CDIException e )
|
||||||
|
@ -1541,6 +1531,30 @@ public class CDebugTarget extends CDebugElement
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void createLineBreakpoint( IFile file, ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException
|
||||||
|
{
|
||||||
|
ICLineBreakpoint breakpoint = CDebugModel.createLineBreakpoint( file,
|
||||||
|
cdiBreakpoint.getLocation().getLineNumber(),
|
||||||
|
cdiBreakpoint.isEnabled(),
|
||||||
|
cdiBreakpoint.getCondition().getIgnoreCount(),
|
||||||
|
cdiBreakpoint.getCondition().getExpression(),
|
||||||
|
false );
|
||||||
|
getBreakpoints().put( breakpoint, cdiBreakpoint );
|
||||||
|
((CBreakpoint)breakpoint).register( true );
|
||||||
|
}
|
||||||
|
|
||||||
|
private void createAddressBreakpoint( ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException
|
||||||
|
{
|
||||||
|
ICAddressBreakpoint breakpoint = CDebugModel.createAddressBreakpoint( getExecFile(),
|
||||||
|
cdiBreakpoint.getLocation().getAddress(),
|
||||||
|
cdiBreakpoint.isEnabled(),
|
||||||
|
cdiBreakpoint.getCondition().getIgnoreCount(),
|
||||||
|
cdiBreakpoint.getCondition().getExpression(),
|
||||||
|
false );
|
||||||
|
getBreakpoints().put( breakpoint, cdiBreakpoint );
|
||||||
|
((CBreakpoint)breakpoint).register( true );
|
||||||
|
}
|
||||||
|
|
||||||
private void handleWatchpointCreatedEvent( final ICDIWatchpoint watchpoint )
|
private void handleWatchpointCreatedEvent( final ICDIWatchpoint watchpoint )
|
||||||
{
|
{
|
||||||
Runnable runnable = new Runnable()
|
Runnable runnable = new Runnable()
|
||||||
|
|
Loading…
Add table
Reference in a new issue