From 2e532365b81ff2a233a634f1b9a9310d922de350 Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Wed, 21 Aug 2002 19:45:38 +0000 Subject: [PATCH] We can not use the event thread ot fire the Exit event since it is destroyed. --- .../src/org/eclipse/cdt/debug/mi/core/MISession.java | 4 +++- .../src/org/eclipse/cdt/debug/mi/core/RxThread.java | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MISession.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MISession.java index ba803c0b6bf..05e5f959154 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MISession.java +++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/MISession.java @@ -227,7 +227,9 @@ MIPlugin.getDefault().debugLog(number++ + " " + cmd.toString()); // Destroy any MI Inferior(Process) inferior.destroy(); - getEventQueue().addItem(new MIExitEvent()); + // Tell the observers that the session + // is finish, but we can not use the Event Thread. + notifyObservers(new MIExitEvent()); // send the exit(-gdb-exit). try { diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/RxThread.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/RxThread.java index 2f17c2a5b03..b768dc854f9 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/RxThread.java +++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/RxThread.java @@ -124,9 +124,9 @@ MIPlugin.getDefault().debugLog(line); MIEvent event = new MIRunningEvent(type); fireEvent(event); } else if ("exit".equals(state)) { - session.getMIInferior().setTerminated(); - MIEvent event = new MIExitEvent(); - fireEvent(event); + //session.getMIInferior().setTerminated(); + //MIEvent event = new MIExitEvent(); + //fireEvent(event); } else if ("connected".equals(state)) { session.getMIInferior().setConnected(); }