From bf11a5e2b7ccf144e46d62e49f9f91bf42762f15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Srbeck=C3=BD?= Date: Tue, 8 Dec 2009 19:29:53 +0000 Subject: [PATCH] Backported r5292 - Disable steppers before detach git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@5313 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Project/Src/Control/Process-StateControl.cs | 8 ++++++++ .../Debugger/Debugger.Core/Project/Src/Control/Stepper.cs | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Process-StateControl.cs b/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Process-StateControl.cs index f9eb2ac684..c8e3ed977d 100644 --- a/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Process-StateControl.cs +++ b/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Process-StateControl.cs @@ -197,6 +197,14 @@ namespace Debugger corProcess.Stop(uint.MaxValue); NotifyPaused(PausedReason.ForcedBreak); } + // This is necessary for detach + foreach(Thread t in this.Threads) { + foreach(Stepper s in t.Steppers) { + if (s.CorStepper.IsActive == 1) { + s.CorStepper.Deactivate(); + } + } + } corProcess.Detach(); NotifyHasExited(); } diff --git a/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Stepper.cs b/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Stepper.cs index 0650fce1c4..91579f3304 100644 --- a/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Stepper.cs +++ b/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Stepper.cs @@ -25,6 +25,10 @@ namespace Debugger public event EventHandler StepComplete; + public ICorDebugStepper CorStepper { + get { return corStepper; } + } + [Debugger.Tests.Ignore] public Process Process { get { return stackFrame.Process; }