mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-30 12:25:35 +02:00
2004-10-15 Alain Magloire
Adjustment to changes in CDI interface concerning breakpoints. Now the thread ids for a breakpoint is specified in the ICDICondition. * cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java * cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java * CBreakpointManager.java * CDebugTarget.java
This commit is contained in:
parent
262d89c54a
commit
f5bde83546
7 changed files with 29 additions and 15 deletions
|
@ -1,3 +1,14 @@
|
|||
2004-10-15 Alain Magloire
|
||||
Adjustment to changes in CDI interface concerning breakpoints.
|
||||
Now the thread ids for a breakpoint is specified in the ICDICondition.
|
||||
* cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java
|
||||
* cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java
|
||||
* cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java
|
||||
* cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
|
||||
|
||||
* CBreakpointManager.java
|
||||
* CDebugTarget.java
|
||||
|
||||
2004-10-14 Mikhail Khodjaiants
|
||||
Partial fix for bug 39936 GDB hits modified conditional breakpoints when condition not satisfied.
|
||||
Condition has to be set at the mi level.
|
||||
|
|
|
@ -31,5 +31,11 @@ public interface ICDICondition {
|
|||
* @return the ignore count of this condition
|
||||
*/
|
||||
int getIgnoreCount();
|
||||
|
||||
|
||||
/**
|
||||
* Returns the thread Ids for this condition.
|
||||
*
|
||||
* @return the thread Ids for this condition.
|
||||
*/
|
||||
String[] getThreadIds();
|
||||
}
|
||||
|
|
|
@ -81,12 +81,4 @@ public interface ICDIBreakpoint extends ICDIObject {
|
|||
*/
|
||||
void setCondition( ICDICondition condition ) throws CDIException;
|
||||
|
||||
/**
|
||||
* Returns a thread identifier or <code>null</code> is the breakpoint
|
||||
* is not thread-specific.
|
||||
*
|
||||
* @return a thread identifier
|
||||
* @throws CDIException if this method fails. Reasons include:
|
||||
*/
|
||||
String getThreadId() throws CDIException;
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@ public interface ICDIBreakpointManagement {
|
|||
ICDIBreakpoint[] getBreakpoints() throws CDIException;
|
||||
|
||||
ICDILocationBreakpoint setLocationBreakpoint(int type, ICDILocation location,
|
||||
ICDICondition condition, String threadId, boolean deferred) throws CDIException;
|
||||
ICDICondition condition, boolean deferred) throws CDIException;
|
||||
|
||||
ICDIWatchpoint setWatchpoint(int type, int watchType, String expression,
|
||||
ICDICondition condition) throws CDIException;
|
||||
|
|
|
@ -170,12 +170,17 @@ public interface ICDITarget extends ICDIThreadGroup, ICDISessionObject {
|
|||
* @throws CDIException
|
||||
*/
|
||||
void signal(ICDISignal signal) throws CDIException;
|
||||
|
||||
|
||||
/**
|
||||
* Return a ICDICondition
|
||||
*/
|
||||
ICDICondition createCondition(int ignoreCount, String expression);
|
||||
|
||||
/**
|
||||
* Return a ICDICondition
|
||||
*/
|
||||
ICDICondition createCondition(int ignoreCount, String expression, String[] threadIds);
|
||||
|
||||
/**
|
||||
* Returns a ICDILocation
|
||||
*/
|
||||
|
|
|
@ -496,7 +496,7 @@ public class CBreakpointManager implements IBreakpointManagerListener, ICDIEvent
|
|||
ICDICondition condition = cdiTarget.createCondition( breakpoint.getIgnoreCount(), breakpoint.getCondition() );
|
||||
ICDIBreakpoint cdiBreakpoint = null;
|
||||
synchronized ( getBreakpointMap() ) {
|
||||
cdiBreakpoint = cdiTarget.setLocationBreakpoint( ICDIBreakpoint.REGULAR, location, condition, null, true );
|
||||
cdiBreakpoint = cdiTarget.setLocationBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true );
|
||||
getBreakpointMap().put( breakpoint, cdiBreakpoint );
|
||||
}
|
||||
return cdiBreakpoint;
|
||||
|
@ -510,7 +510,7 @@ public class CBreakpointManager implements IBreakpointManagerListener, ICDIEvent
|
|||
ICDILocation location = cdiTarget.createLocation( new BigInteger ( breakpoint.getAddress().substring( 2 ), 16 ) );
|
||||
ICDICondition condition = cdiTarget.createCondition( breakpoint.getIgnoreCount(), breakpoint.getCondition() );
|
||||
synchronized ( getBreakpointMap() ) {
|
||||
cdiBreakpoint = cdiTarget.setLocationBreakpoint( ICDIBreakpoint.REGULAR, location, condition, null, true );
|
||||
cdiBreakpoint = cdiTarget.setLocationBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true );
|
||||
getBreakpointMap().put( breakpoint, cdiBreakpoint );
|
||||
}
|
||||
}
|
||||
|
@ -523,7 +523,7 @@ public class CBreakpointManager implements IBreakpointManagerListener, ICDIEvent
|
|||
ICDICondition condition = cdiTarget.createCondition( breakpoint.getIgnoreCount(), breakpoint.getCondition() );
|
||||
ICDIBreakpoint cdiBreakpoint = null;
|
||||
synchronized ( getBreakpointMap() ) {
|
||||
cdiBreakpoint = cdiTarget.setLocationBreakpoint( ICDIBreakpoint.REGULAR, location, condition, null, true );
|
||||
cdiBreakpoint = cdiTarget.setLocationBreakpoint( ICDIBreakpoint.REGULAR, location, condition, true );
|
||||
getBreakpointMap().put( breakpoint, cdiBreakpoint );
|
||||
}
|
||||
return cdiBreakpoint;
|
||||
|
|
|
@ -1321,7 +1321,7 @@ public class CDebugTarget extends CDebugElement implements ICDebugTarget, ICDIEv
|
|||
|
||||
public void setInternalTemporaryBreakpoint( ICDILocation location ) throws DebugException {
|
||||
try {
|
||||
getCDITarget().setLocationBreakpoint( ICDIBreakpoint.TEMPORARY, location, null, null, false );
|
||||
getCDITarget().setLocationBreakpoint( ICDIBreakpoint.TEMPORARY, location, null, false );
|
||||
}
|
||||
catch( CDIException e ) {
|
||||
targetRequestFailed( e.getMessage(), null );
|
||||
|
|
Loading…
Add table
Reference in a new issue