This repository was archived by the owner on Oct 16, 2020. It is now read-only.
This repository was archived by the owner on Oct 16, 2020. It is now read-only.
DebuggerException: Evaluation can not be stopped
thrown when trying to evaluate StringBuilder.ToString() #579
Open
Description
The following exception is thrown:
Exception thrown:
Debugger.DebuggerException: Evaluation can not be stopped
at Debugger.Eval.WaitForResult() in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.Core\Eval.cs:line 172
at Debugger.Eval.InvokeMethod(Thread evalThread, IMethod method, Value thisValue, Value[] args) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.Core\Eval.cs:line 214
at Debugger.Value.InvokeToString(Thread evalThread, Int32 maxLength) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.Core\Value.cs:line 723
at Debugger.AddIn.TreeModel.ValueNode.GetValueAndUpdateUI() in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.AddIn\TreeModel\ValueNode.cs:line 184
at Debugger.AddIn.TreeModel.ValueNode..ctor(IImage image, String name, Func`1 getValue, Action`1 setValue) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.AddIn\TreeModel\ValueNode.cs:line 78
at ICSharpCode.SharpDevelop.Services.WindowsDebugger.HandleToolTipRequest(ToolTipRequestEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.AddIn\Service\WindowsDebugger.cs:line 647
at ICSharpCode.SharpDevelop.Debugging.DebuggerTextAreaToolTipProvider.HandleToolTipRequest(ToolTipRequestEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Main\Base\Project\Debugging\IDebuggerService.cs:line 190
at ICSharpCode.SharpDevelop.Editor.ToolTipRequestService.RequestToolTip(ToolTipRequestEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Main\Base\Project\Editor\ToolTipService.cs:line 59
at ICSharpCode.AvalonEdit.AddIn.CodeEditorView.TextEditorMouseHover(Object sender, MouseEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\DisplayBindings\AvalonEdit.AddIn\Src\CodeEditorView.cs:line 282
at System.Windows.Input.MouseEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at ICSharpCode.AvalonEdit.Rendering.TextView.RaiseHoverEventPair(MouseEventArgs e, RoutedEvent tunnelingEvent, RoutedEvent bubblingEvent) in e:\Projects\SharpDevelop\SharpDevelop master\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Rendering\TextView.cs:line 1929
at ICSharpCode.AvalonEdit.Rendering.TextView.<.ctor>b__0(Object sender, MouseEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Rendering\TextView.cs:line 81
at ICSharpCode.AvalonEdit.Rendering.MouseHoverLogic.OnMouseHover(MouseEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Rendering\MouseHoverLogic.cs:line 115
at ICSharpCode.AvalonEdit.Rendering.MouseHoverLogic.OnMouseHoverTimerElapsed(Object sender, EventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Rendering\MouseHoverLogic.cs:line 101
at System.Windows.Threading.DispatcherTimer.FireTick(Object unused)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
---- Recent log messages:
16:11:26.069 [1] DEBUG - ChooseLayoutCommand.Run()
16:11:26.070 [1] INFO - Saving layout file: C:\Users\Siegfried\AppData\Roaming\ICSharpCode\SharpDevelop5\layouts\Debug.xml
16:11:26.087 [1] DEBUG - Service startup: ICSharpCode.SharpDevelop.Dom.ClassBrowser.IClassBrowser
16:11:27.357 [1] INFO - Open file e:\Documents\SharpDevelop Projects\BugTest\Test2\Program.cs
16:11:27.938 [8] DEBUG - Resolved (Line 26, Col 4) to [TypeResolveResult System.String]
16:11:29.261 [1] DEBUG - Resolved (Line 26, Col 20) to [LocalResolveResult System.Text.StringBuilder builder;]
16:11:29.957 [1] INFO - Evaluated node 'builder' in 685 ms
16:11:30.994 [1] DEBUG - [AddInManager2.Events] Package list download ended (success: False).
16:11:30.998 [1] DEBUG - [AddInManager2.Events] Package list download ended (success: True).
16:11:31.721 [1] DEBUG - Resolved (Line 21, Col 9) to [LocalResolveResult System.Text.StringBuilder builder;]
16:11:35.778 [7] DEBUG - Telling worker process to exit
16:11:35.779 [7] DEBUG - Waiting for thread-join
16:11:35.780 [15] DEBUG - Cannot read from WorkerProcess 9364: end of stream
16:11:35.781 [15] DEBUG - Stopped reading from WorkerProcess 9364.
16:11:35.783 [15] DEBUG - Telling worker process to exit
16:11:35.784 [15] DEBUG - End of reader thread on WorkerProcess 9364.
16:11:35.786 [7] DEBUG - Joined!
16:11:35.903 [5] DEBUG - Telling worker process to exit
16:11:35.903 [5] DEBUG - Waiting for thread-join
16:11:35.904 [16] DEBUG - Cannot read from WorkerProcess 10696: end of stream
16:11:35.905 [16] DEBUG - Stopped reading from WorkerProcess 10696.
16:11:35.907 [16] DEBUG - Telling worker process to exit
16:11:35.909 [16] DEBUG - End of reader thread on WorkerProcess 10696.
16:11:35.911 [5] DEBUG - Joined!
16:11:40.790 [1] ERROR - Unhandled WPF exception
--> Exception:
Debugger.DebuggerException: Evaluation can not be stopped
at Debugger.Eval.WaitForResult() in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.Core\Eval.cs:line 172
at Debugger.Eval.InvokeMethod(Thread evalThread, IMethod method, Value thisValue, Value[] args) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.Core\Eval.cs:line 214
at Debugger.Value.InvokeToString(Thread evalThread, Int32 maxLength) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.Core\Value.cs:line 723
at Debugger.AddIn.TreeModel.ValueNode.GetValueAndUpdateUI() in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.AddIn\TreeModel\ValueNode.cs:line 184
at Debugger.AddIn.TreeModel.ValueNode..ctor(IImage image, String name, Func`1 getValue, Action`1 setValue) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.AddIn\TreeModel\ValueNode.cs:line 78
at ICSharpCode.SharpDevelop.Services.WindowsDebugger.HandleToolTipRequest(ToolTipRequestEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\Debugger\Debugger.AddIn\Service\WindowsDebugger.cs:line 647
at ICSharpCode.SharpDevelop.Debugging.DebuggerTextAreaToolTipProvider.HandleToolTipRequest(ToolTipRequestEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Main\Base\Project\Debugging\IDebuggerService.cs:line 190
at ICSharpCode.SharpDevelop.Editor.ToolTipRequestService.RequestToolTip(ToolTipRequestEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\Main\Base\Project\Editor\ToolTipService.cs:line 59
at ICSharpCode.AvalonEdit.AddIn.CodeEditorView.TextEditorMouseHover(Object sender, MouseEventArgs e) in e:\Projects\SharpDevelop\SharpDevelop master\src\AddIns\DisplayBindings\AvalonEdit.AddIn\Src\CodeEditorView.cs:line 282
Steps:
- Use the following program to reproduce:
using System;
using System.Text;
namespace Test2
{
class Program
{
const string TEST = "THIS IS A LONG TEST STRING";
public static void Main(string[] args)
{
Console.WriteLine("Hello World!");
var builder = new StringBuilder();
for (int i = 0; i < int.MaxValue / 685; i++)
builder.Append(TEST);
string test = builder.ToString(); // breakpoint here!
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
- Place a breakpoint on the marked line
- Run the program. Wait for the debugger to break.
- Hover over
builder
at the breakpoint. It should evaluate. - Without continuing execution, hover over
builder
at another location. - The aforementioned exception should be thrown.