1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

in processSuspedEvent only use MIStoppedEvent.getThreadID().

This commit is contained in:
Alain Magloire 2002-11-29 20:39:12 +00:00
parent fec37bb3a8
commit a1de0b92b6

View file

@ -15,24 +15,17 @@ import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.cdi.ICDIEventManager; import org.eclipse.cdt.debug.core.cdi.ICDIEventManager;
import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent; import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener; import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
import org.eclipse.cdt.debug.mi.core.event.MIBreakpointEvent;
import org.eclipse.cdt.debug.mi.core.event.MIChangedEvent; import org.eclipse.cdt.debug.mi.core.event.MIChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIDetachedEvent; import org.eclipse.cdt.debug.mi.core.event.MIDetachedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIEvent; import org.eclipse.cdt.debug.mi.core.event.MIEvent;
import org.eclipse.cdt.debug.mi.core.event.MIFunctionFinishedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIGDBExitEvent; import org.eclipse.cdt.debug.mi.core.event.MIGDBExitEvent;
import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent; import org.eclipse.cdt.debug.mi.core.event.MIInferiorExitEvent;
import org.eclipse.cdt.debug.mi.core.event.MILocationReachedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIMemoryChangedEvent; import org.eclipse.cdt.debug.mi.core.event.MIMemoryChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent; import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent; import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent;
import org.eclipse.cdt.debug.mi.core.event.MISignalEvent;
import org.eclipse.cdt.debug.mi.core.event.MISteppingRangeEvent;
import org.eclipse.cdt.debug.mi.core.event.MIStoppedEvent; import org.eclipse.cdt.debug.mi.core.event.MIStoppedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIThreadExitEvent; import org.eclipse.cdt.debug.mi.core.event.MIThreadExitEvent;
import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent; import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIWatchpointScopeEvent;
import org.eclipse.cdt.debug.mi.core.event.MIWatchpointTriggerEvent;
/** /**
*/ */
@ -54,7 +47,7 @@ public class EventManager extends SessionObject implements ICDIEventManager, Obs
miEvent = miEvent; miEvent = miEvent;
// Ignore the event if it is on the ignore list. // Ignore the event if it is on the ignore list.
} else if (miEvent instanceof MIStoppedEvent) { } else if (miEvent instanceof MIStoppedEvent) {
processSuspendedEvent(miEvent); processSuspendedEvent((MIStoppedEvent)miEvent);
cdiList.add(new SuspendedEvent(session, miEvent)); cdiList.add(new SuspendedEvent(session, miEvent));
} else if (miEvent instanceof MIRunningEvent) { } else if (miEvent instanceof MIRunningEvent) {
cdiList.add(new ResumedEvent(session, (MIRunningEvent)miEvent)); cdiList.add(new ResumedEvent(session, (MIRunningEvent)miEvent));
@ -148,32 +141,11 @@ public class EventManager extends SessionObject implements ICDIEventManager, Obs
* Alse the variable and the memory needs to be updated and events * Alse the variable and the memory needs to be updated and events
* fired for changes. * fired for changes.
*/ */
void processSuspendedEvent(MIEvent event) { void processSuspendedEvent(MIStoppedEvent stopped) {
int threadId = 0;
CTarget target = getCSession().getCTarget(); CTarget target = getCSession().getCTarget();
// Set the current thread. // Set the current thread.
if (event instanceof MIBreakpointEvent) { int threadId = threadId = stopped.getThreadId();
MIBreakpointEvent breakEvent = (MIBreakpointEvent) event;
threadId = breakEvent.getThreadId();
} else if (event instanceof MIWatchpointTriggerEvent) {
MIWatchpointTriggerEvent watchEvent = (MIWatchpointTriggerEvent) event;
threadId = watchEvent.getThreadId();
} else if (event instanceof MIWatchpointScopeEvent) {
MIWatchpointScopeEvent watchEvent = (MIWatchpointScopeEvent) event;
threadId = watchEvent.getThreadId();
} else if (event instanceof MISteppingRangeEvent) {
MISteppingRangeEvent rangeEvent = (MISteppingRangeEvent) event;
threadId = rangeEvent.getThreadId();
} else if (event instanceof MISignalEvent) {
MISignalEvent sigEvent = (MISignalEvent) event;
threadId = sigEvent.getThreadId();
} else if (event instanceof MILocationReachedEvent) {
MILocationReachedEvent locEvent = (MILocationReachedEvent) event;
threadId = locEvent.getThreadId();
} else if (event instanceof MIFunctionFinishedEvent) {
MIFunctionFinishedEvent funcEvent = (MIFunctionFinishedEvent) event;
threadId = funcEvent.getThreadId();
}
target.updateState(threadId); target.updateState(threadId);
// Update the managers. // Update the managers.