From 68838acdf5ed460af1d0112d15187e027ed1b262 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Srbeck=C3=BD?= Date: Tue, 8 Dec 2009 19:17:54 +0000 Subject: [PATCH] Backported r5290 - Workaround for exception during removing of breakpoint (can not reproduce though) git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@5311 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Project/Src/Debugger/Breakpoint.cs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/Breakpoint.cs b/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/Breakpoint.cs index 6e395c7d91..10da6b891c 100644 --- a/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/Breakpoint.cs +++ b/src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/Breakpoint.cs @@ -111,7 +111,20 @@ namespace Debugger internal void Deactivate() { foreach(ICorDebugFunctionBreakpoint corBreakpoint in corBreakpoints) { - corBreakpoint.Activate(0); + #if DEBUG + // Get repro + corBreakpoint.Activate(0); + #else + try { + corBreakpoint.Activate(0); + } catch(COMException e) { + // Sometimes happens, but we had not repro yet. + // 0x80131301: Process was terminated. + if ((uint)e.ErrorCode == 0x80131301) + continue; + throw; + } + #endif } corBreakpoints.Clear(); }