[Pkg] The Trunk: Tools-ul.357.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue Jun 7 15:53:31 UTC 2011
Levente Uzonyi uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-ul.357.mcz
==================== Summary ====================
Name: Tools-ul.357
Author: ul
Time: 29 May 2011, 7:51:18.372 pm
UUID: 9b7529a4-621a-0440-b9aa-3d99daefe41e
Ancestors: Tools-ul.356
Don't install doits into MethodDictionaries.
=============== Diff against Tools-ul.356 ===============
Item was changed:
----- Method: ParagraphEditor>>debug:receiver:in: (in category '*Tools') -----
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: ((Smalltalk isMorphic not and: [ScheduledControllers inActiveControllerProcess])
ifTrue: [ScheduledControllers activeController]
ifFalse: [nil])
context: context.
debugger openFullNoSuspendLabel: 'Debug it'.
[debugger interruptedContext method == aCompiledMethod]
+ whileFalse: [debugger send]!
- whileFalse: [debugger send].
- anObject class basicRemoveSelector: selector!
More information about the Packages
mailing list