[squeak-dev] The Trunk: Kernel-ct.1493.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Nov 25 17:20:06 UTC 2022


Christoph Thiede uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-ct.1493.mcz

==================== Summary ====================

Name: Kernel-ct.1493
Author: ct
Time: 25 November 2022, 6:20:03.170214 pm
UUID: 4ed198f9-d0db-ec40-884f-88826ffae1f5
Ancestors: Kernel-nice.1492

Merges recursive-profaide:
	Adds support for recursive process-faithful debugging. Without this patch, debugging the debugger for a process which sends Processor activeProcess will have a different effect than running the original debugger directly. See tests in KernelTests-ct.440 and ToolsTests-ct.117.
	
	This is kind of a delayed follow-up on Kernel-mt.1381. Thanks to Marcel for discussing this issue!

=============== Diff against Kernel-nice.1492 ===============

Item was changed:
  ----- Method: Process>>effectiveProcess (in category 'accessing') -----
  effectiveProcess
+ 	"effectiveProcess is a mechanism to allow process-faithful debugging.  The debugger executes code on behalf of processes, so unless some effort is made the identity of Processor activeProcess is not correctly maintained when debugging code.  The debugger uses evaluate:onBehalfOf: to assign the debugged process as the effectiveProcess of the process executing the code, preserving process identity."
+ 	
+ 	^effectiveProcess
+ 		ifNil: [self]
+ 		ifNotNil: [:process |
+ 			"Recursive process-faithful debugging. See DebuggerTests>>#test25RecursiveProcessFaithfulDebugging for a practical example."
+ 			process effectiveProcess]!
- 	"effectiveProcess is a mechanism to allow process-faithful debugging.  The debugger executes code
- 	 on behalf of processes, so unless some effort is made the identity of Processor activeProcess is not
- 	 correctly maintained when debugging code.  The debugger uses evaluate:onBehalfOf: to assign the
- 	 debugged process as the effectiveProcess of the process executing the code, preserving process
- 	 identity."
- 	^effectiveProcess ifNil: [self]!



More information about the Squeak-dev mailing list