Open AndrewBrianHall opened 9 years ago
I want to confirm, that it doesn't matter how do you enable the hexadecimal display - today I was able to reproduce this bug enabling Hex view through icon on a Debug Toolbar
I'm able to repro this fairly consistently with the VC Linux extension. Create a Linux console app and just declare an int variable, e.g. int number = 42; Place a breakpoint, build/debug and add the variable to the watch window when you hit the breakpoint. Right click the watched variable and select hexadecimal. VS may or may not hang, but I'm having pretty good success with hang. It has to be killed in task manager.
@robotdad please include a project if you can
From Michael.Carmody@sap.com:
To reproduce I closed the “locals” window then I toggled the format on the “autos” window. It seems to work if the “locals” window is open.
Stack trace for a hung VS: WindowsBase.dll!System.Windows.Threading.DispatcherSynchronizationContext.Wait(System.IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.SynchronizationContext.InvokeWaitMethodHelper(System.Threading.SynchronizationContext syncContext, System.IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout) Unknown Non-user code. Skipped loading symbols. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame mscorlib.dll!System.Threading.Monitor.Wait(object obj, int millisecondsTimeout, bool exitContext) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.Monitor.Wait(object obj, int millisecondsTimeout) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.ManualResetEventSlim.Wait(int millisecondsTimeout, System.Threading.CancellationToken cancellationToken) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.Tasks.Task.SpinThenBlockingWait(int millisecondsTimeout, System.Threading.CancellationToken cancellationToken) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.Tasks.Task.InternalWait(int millisecondsTimeout, System.Threading.CancellationToken cancellationToken) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.Tasks.Task.Wait(int millisecondsTimeout, System.Threading.CancellationToken cancellationToken) Unknown Non-user code. Skipped loading symbols.
Microsoft.MIDebugEngine.dll!Microsoft.MIDebugEngine.VariableInformation.SyncEval(Microsoft.VisualStudio.Debugger.Interop.enum_EVALFLAGS dwFlags) Unknown Non-user code. Skipped loading symbols. Microsoft.MIDebugEngine.dll!Microsoft.MIDebugEngine.AD7Expression.Microsoft.VisualStudio.Debugger.Interop.IDebugExpression2.EvaluateSync(Microsoft.VisualStudio.Debugger.Interop.enum_EVALFLAGS dwFlags, uint dwTimeout, Microsoft.VisualStudio.Debugger.Interop.IDebugEventCallback2 pExprCallback, out Microsoft.VisualStudio.Debugger.Interop.IDebugProperty2 ppResult) Unknown Non-user code. Skipped loading symbols. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame WindowsBase.dll!System.Windows.Threading.DispatcherSynchronizationContext.Wait(System.IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.SynchronizationContext.InvokeWaitMethodHelper(System.Threading.SynchronizationContext syncContext, System.IntPtr[] waitHandles, bool waitAll, int millisecondsTimeout) Unknown Non-user code. Skipped loading symbols. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame mscorlib.dll!System.Threading.WaitHandle.InternalWaitOne(System.Runtime.InteropServices.SafeHandle waitableSafeHandle, long millisecondsTimeout, bool hasThreadAffinity, bool exitContext) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.WaitHandle.WaitOne(int millisecondsTimeout, bool exitContext) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.WaitHandle.WaitOne() Unknown Non-user code. Skipped loading symbols. Microsoft.MIDebugEngine.dll!Microsoft.MIDebugEngine.WorkerThread.TrySetOperationInternal(System.Delegate op) Unknown Non-user code. Skipped loading symbols. Microsoft.MIDebugEngine.dll!Microsoft.MIDebugEngine.WorkerThread.SetOperationInternal(System.Delegate op) Unknown Non-user code. Skipped loading symbols. Microsoft.MIDebugEngine.dll!Microsoft.MIDebugEngine.WorkerThread.RunOperation(Microsoft.MIDebugEngine.AsyncOperation op) Unknown Non-user code. Skipped loading symbols. Microsoft.MIDebugEngine.dll!Microsoft.MIDebugEngine.AD7Thread.Microsoft.VisualStudio.Debugger.Interop.IDebugThread2.EnumFrameInfo(Microsoft.VisualStudio.Debugger.Interop.enum_FRAMEINFO_FLAGS dwFieldSpec, uint nRadix, out Microsoft.VisualStudio.Debugger.Interop.IEnumDebugFrameInfo2 enumObject) Unknown Non-user code. Skipped loading symbols. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame Microsoft.VisualStudio.Shell.15.0.dll!Microsoft.Internal.VisualStudio.PlatformUI.DataSource.Invoke(string verb, object pvaIn, out object pvaOut) Unknown Non-user code. Skipped loading symbols. Microsoft.VisualStudio.Shell.UI.Internal.dll!Microsoft.VisualStudio.PlatformUI.VsCommand.Execute(object parameter) Unknown Non-user code. Skipped loading symbols. PresentationFramework.dll!MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(System.Windows.Input.ICommandSource commandSource, bool userInitiated) Unknown Non-user code. Skipped loading symbols. PresentationFramework.dll!System.Windows.Controls.MenuItem.InvokeClickAfterRender(object arg) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate callback, object args, int numArgs) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.TryCatchWhen(object source, System.Delegate callback, object args, int numArgs, System.Delegate catchHandler) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.DispatcherOperation.InvokeImpl() Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(object state) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(object obj) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx) Unknown Non-user code. Skipped loading symbols. mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext executionContext, System.Threading.ContextCallback callback, object state) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.DispatcherOperation.Invoke() Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.Dispatcher.ProcessQueue() Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.Dispatcher.WndProcHook(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!MS.Win32.HwndWrapper.WndProc(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!MS.Win32.HwndSubclass.DispatcherCallbackOperation(object o) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate callback, object args, int numArgs) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.TryCatchWhen(object source, System.Delegate callback, object args, int numArgs, System.Delegate catchHandler) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority priority, System.TimeSpan timeout, System.Delegate method, object args, int numArgs) Unknown Non-user code. Skipped loading symbols. WindowsBase.dll!MS.Win32.HwndSubclass.SubclassWndProc(System.IntPtr hwnd, int msg, System.IntPtr wParam, System.IntPtr lParam) Unknown Non-user code. Skipped loading symbols. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame Microsoft.VisualStudio.Platform.WindowManagement.dll!Microsoft.VisualStudio.Platform.WindowManagement.WindowManagerService.PushMessageLoopOnContextMenuTrackingComponent.AnonymousMethod__218_1(object sender, Microsoft.VisualStudio.PlatformUI.OleComponentSupport.PreTranslateMessageEventArgs args) Unknown Non-user code. Skipped loading symbols. Microsoft.VisualStudio.Shell.15.0.dll!Microsoft.VisualStudio.PlatformUI.OleComponentSupport.OleComponent.FPreTranslateMessageCore(Microsoft.VisualStudio.OLE.Interop.MSG[] pMsg) Unknown Non-user code. Skipped loading symbols. Microsoft.VisualStudio.Shell.15.0.dll!Microsoft.VisualStudio.PlatformUI.OleComponentSupport.OleComponent.Microsoft.VisualStudio.OLE.Interop.IOleComponent.FPreTranslateMessage.AnonymousMethod__0() Unknown Non-user code. Skipped loading symbols. Microsoft.VisualStudio.Shell.15.0.dll!Microsoft.VisualStudio.PlatformUI.OleComponentSupport.OleComponent.CallAndReturnOnException(System.Func
method, int retValueOnException) Unknown Non-user code. Skipped loading symbols. Microsoft.VisualStudio.Shell.15.0.dll!Microsoft.VisualStudio.PlatformUI.OleComponentSupport.OleComponent.Microsoft.VisualStudio.OLE.Interop.IOleComponent.FPreTranslateMessage(Microsoft.VisualStudio.OLE.Interop.MSG[] pMsg) Unknown Non-user code. Skipped loading symbols. [Native to Managed Transition] Annotated Frame [Managed to Native Transition] Annotated Frame Microsoft.VisualStudio.Platform.WindowManagement.dll!Microsoft.VisualStudio.Platform.WindowManagement.WindowManagerService.PushMessageLoopOnContextMenuTrackingComponent() Unknown Non-user code. Skipped loading symbols.
Linux user has reported this bug again too: https://github.com/Microsoft/VSLinux/issues/205 Linux issue includes step to repro the problem.
Another Linux user has hit this issue: https://github.com/Microsoft/VSLinux/issues/268#issuecomment-375276305
I also have the same issue which is very annoying. Also for some reason mine is stuck in Hex view and for the life of me I cannot set it back to decimal view.
This looks like it should have been fixed in 15.8 preview 3. What VS release are you seeing it in?
In some applications Visual Studio hangs when enabling Hexadecimal display in the call stack window.
I have a dump of the hang to share internally