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 bd61d52a730..90c078a5210 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 @@ -50,7 +50,6 @@ import org.eclipse.debug.core.model.IBreakpoint; import org.eclipse.debug.core.model.IDebugTarget; import org.eclipse.debug.core.model.IMemoryBlock; import org.eclipse.debug.core.model.IProcess; -import org.eclipse.debug.core.model.ISourceLocator; import org.eclipse.debug.core.model.IThread; /** @@ -1048,12 +1047,20 @@ public class CDebugTarget extends CDebugElement setCurrentStateId( IState.EXITED ); setCurrentStateInfo( event.getExitInfo() ); fireChangeEvent( DebugEvent.CONTENT ); + try + { + terminate(); + } + catch( DebugException e ) + { + CDebugCorePlugin.log( e.getStatus() ); + } } private void handleTerminatedEvent( ICDIDestroyedEvent event ) { - setCurrentStateId( IState.TERMINATED ); - setCurrentStateInfo( null ); +// setCurrentStateId( IState.TERMINATED ); +// setCurrentStateInfo( null ); IProcess process = getProcess(); if ( process != null ) {