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

commits at source.squeak.org commits at source.squeak.org
Sun Jun 12 19:32:05 UTC 2022

Christoph Thiede uploaded a new version of Kernel to project The Trunk:

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

Name: Kernel-ct.1482
Author: ct
Time: 12 June 2022, 9:30:41.744973 pm
UUID: 4ce69d3d-4796-1e42-9c32-0c63a9de6c7b
Ancestors: Kernel-ct.1481

Merges Kernel-ct.1481:
	Revises Exception>>signal to copy all exception-specific state when resignaling an already signaled exception.

	Extract #freshCopy.

Thanks to Jaromir (jar) and Jakob (jr)!

=============== Diff against Kernel-ct.1481 ===============

Item was added:
+ ----- Method: Exception>>freshCopy (in category 'copying') -----
+ freshCopy
+ 	^ self copy refreshContexts!

Item was changed:
  ----- Method: Exception>>signal (in category 'signaling') -----
  	"Ask handler contexts in the sender chain to handle this signal.  The default is to evaluate my defaultAction and return the result.
  	Sending #signal to an already signaled exception generates a fresh copy of the receiver."
+ 	signalContext ifNotNil: [^self freshCopy signal].
- 	signalContext ifNotNil: [^self copy refreshContexts signal].
  	signalContext := thisContext contextTag.
  	^(thisContext nextHandlerContextForSignal: self) handleSignal: self!

More information about the Squeak-dev mailing list