diff options
author | Alain Magloire | 2005-07-07 19:59:16 +0000 |
---|---|---|
committer | Alain Magloire | 2005-07-07 19:59:16 +0000 |
commit | a038681ea1961bfb7a0ad63c5225b21d1a69c25a (patch) | |
tree | 4e2a67519a0be8149a95d0b5a75e78bb5130032c | |
parent | 19a7fbdaee93d97f5293f8a5bc9a12949495f831 (diff) | |
download | org.eclipse.cdt-a038681ea1961bfb7a0ad63c5225b21d1a69c25a.tar.gz org.eclipse.cdt-a038681ea1961bfb7a0ad63c5225b21d1a69c25a.tar.xz org.eclipse.cdt-a038681ea1961bfb7a0ad63c5225b21d1a69c25a.zip |
2005-07-07 Alain Magloire
Try to suspend the target before disconnecting.
* cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java
-rw-r--r-- | debug/org.eclipse.cdt.debug.mi.core/ChangeLog | 4 | ||||
-rw-r--r-- | debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java | 11 |
2 files changed, 15 insertions, 0 deletions
diff --git a/debug/org.eclipse.cdt.debug.mi.core/ChangeLog b/debug/org.eclipse.cdt.debug.mi.core/ChangeLog index f5e2fc1390e..ab7559b0168 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/ChangeLog +++ b/debug/org.eclipse.cdt.debug.mi.core/ChangeLog @@ -1,3 +1,7 @@ +2005-07-07 Alain Magloire + Try to suspend the target before disconnecting. + * cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java + 2005-07-04 Alain Magloire Base on a patch from Chris Wiebe. * cdi/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java diff --git a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java index 84450e10878..28d36e53666 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java +++ b/debug/org.eclipse.cdt.debug.mi.core/cdi/org/eclipse/cdt/debug/mi/core/cdi/model/Target.java @@ -39,6 +39,7 @@ import org.eclipse.cdt.debug.mi.core.MIException; import org.eclipse.cdt.debug.mi.core.MISession; import org.eclipse.cdt.debug.mi.core.cdi.BreakpointManager; import org.eclipse.cdt.debug.mi.core.cdi.CdiResources; +import org.eclipse.cdt.debug.mi.core.cdi.EventManager; import org.eclipse.cdt.debug.mi.core.cdi.ExpressionManager; import org.eclipse.cdt.debug.mi.core.cdi.MI2CDIException; import org.eclipse.cdt.debug.mi.core.cdi.MemoryManager; @@ -519,6 +520,16 @@ public class Target extends SessionObject implements ICDITarget { * @see org.eclipse.cdt.debug.core.cdi.model.ICDITarget#disconnect() */ public void disconnect() throws CDIException { + // if Target is running try to suspend first. + if (isRunning()) { + try { + ((EventManager)getSession().getEventManager()).allowProcessingEvents(false); + suspend(); + } finally { + ((EventManager)getSession().getEventManager()).allowProcessingEvents(true); + } + } + CommandFactory factory = miSession.getCommandFactory(); MITargetDetach detach = factory.createMITargetDetach(); try { |