|
|
@ -26,8 +26,17 @@ namespace ICSharpCode.SharpDevelop.Services |
|
|
|
ITextEditor textEditor = provider.TextEditor; |
|
|
|
ITextEditor textEditor = provider.TextEditor; |
|
|
|
|
|
|
|
|
|
|
|
Breakpoint breakpoint = winDebugger.DebuggerCore.Breakpoints.Add(textEditor.FileName, null, textEditor.Caret.Line, textEditor.Caret.Column, true); |
|
|
|
Breakpoint breakpoint = winDebugger.DebuggerCore.Breakpoints.Add(textEditor.FileName, null, textEditor.Caret.Line, textEditor.Caret.Column, true); |
|
|
|
breakpoint.Hit += delegate { breakpoint.Remove(); }; |
|
|
|
// Be careful to remove the breakpoint just once
|
|
|
|
winDebugger.DebuggedProcess.Paused += delegate { breakpoint.Remove(); }; |
|
|
|
breakpoint.Hit += delegate { |
|
|
|
|
|
|
|
if (breakpoint != null) |
|
|
|
|
|
|
|
breakpoint.Remove(); |
|
|
|
|
|
|
|
breakpoint = null; |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
winDebugger.DebuggedProcess.Paused += delegate { |
|
|
|
|
|
|
|
if (breakpoint != null) |
|
|
|
|
|
|
|
breakpoint.Remove(); |
|
|
|
|
|
|
|
breakpoint = null; |
|
|
|
|
|
|
|
}; |
|
|
|
if (!winDebugger.IsProcessRunning) { |
|
|
|
if (!winDebugger.IsProcessRunning) { |
|
|
|
winDebugger.Continue(); |
|
|
|
winDebugger.Continue(); |
|
|
|
} |
|
|
|
} |
|
|
|