[squeak-dev] The Inbox: Morphic-ul.544.mcz
commits at source.squeak.org
commits at source.squeak.org
Sun May 29 17:52:46 UTC 2011
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!
More information about the Squeak-dev
mailing list
|