A new version of Morphic was added to project The Inbox: http://source.squeak.org/inbox/Morphic-ul.544.mcz
==================== Summary ====================
Name: Morphic-ul.544 Author: ul Time: 29 May 2011, 7:50:51.766 pm UUID: 3380e546-7615-5844-8c23-5098e78b2f92 Ancestors: Morphic-bf.543
Don't install doits into MethodDictionaries.
=============== Diff against Morphic-bf.543 ===============
Item was changed: ----- Method: TextEditor>>debug:receiver:in: (in category 'do-its') ----- debug: aCompiledMethod receiver: anObject in: evalContext
+ | guineaPig debugger context | + guineaPig := [ + anObject "Use primitive 188, because primitive 189 escapes the debugger somehow." + withArgs: (evalContext ifNil: [ #() ] ifNotNil: [ { evalContext } ]) + executeMethod: aCompiledMethod ] newProcess. - | selector guineaPig debugger context | - selector := evalContext isNil ifTrue: [#DoIt] ifFalse: [#DoItIn:]. - anObject class addSelectorSilently: selector withMethod: aCompiledMethod. - guineaPig := evalContext isNil - ifTrue: [[anObject DoIt] newProcess] - ifFalse: [[anObject DoItIn: evalContext] newProcess]. context := guineaPig suspendedContext. debugger := Debugger new process: guineaPig controller: nil context: context. debugger openFullNoSuspendLabel: 'Debug it'. + [ debugger interruptedContext method == aCompiledMethod ] + whileFalse: [ debugger send ]! - [debugger interruptedContext method == aCompiledMethod] - whileFalse: [debugger send]. - anObject class basicRemoveSelector: selector!
squeak-dev@lists.squeakfoundation.org