| context process debugger | context := [ 20 factorial ] asContext. process := Process forContext: context priority: Processor userInterruptPriority. [ debugger := Smalltalk tools debugger new process: process controller: nil context: context. Transcript show: debugger stack class ; cr ] ensure: [ process terminate] When I look at some of the stuck processes SpecDebugger>>initializePresenter super initializePresenter. self flag: 'some of this logic could be moved to the stack widget'. self flag: 'The toolbar should not be updated when the list changes, but when an action is perormed.'. self stack whenListChanged: [ :aList | aList isEmpty ifFalse: [ self stack setSelectedItem: aList first ]. "Updating the toolbar will result in changing the button widgets. If the widget hasn't been opened, there will be no spec, which leads to an error." self spec ifNotNil: [ self updateToolbar ] ]. self stack whenSelectedItemChanged: [:aContext | self updateCodeFromContext: aContext. self updateInspectorsFromContext: aContext. self stack updateForSelectionChanged ]. self contextInspector initializeAutoRefresh. ^^^^^^^^^^^^^^^^^^^^^^^^^^^ And initializeAutoRefresh does not exist in the latest image. I have no idea why the debugger may work may be this method is not used at all. Can somebody else confirm because I have the impression to fall into a rat nest. stef