[squeak-dev] The Trunk: System-fbs.651.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Dec 30 10:17:04 UTC 2013


Frank Shearar uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-fbs.651.mcz

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

Name: System-fbs.651
Author: fbs
Time: 30 December 2013, 10:13:35.195 am
UUID: c3a1cfb8-ac50-4440-b875-47822cb57459
Ancestors: System-fbs.650

Move Transcripter's invoker to System-Recovery. All #primitiveError: senders are in Tools, so this completes the move of recovery things to System-Recovery.

=============== Diff against System-fbs.650 ===============

Item was added:
+ ----- Method: Object>>primitiveError: (in category '*System-Recovery-error handling') -----
+ primitiveError: aString 
+ 	"This method is called when the error handling results in a recursion in 
+ 	calling on error: or halt or halt:."
+ 	| hasTranscripter transcripter |
+ 	hasTranscripter := (Smalltalk classNamed: #Transcripter)
+ 		ifNotNil: [ :t | transcripter := t. true]
+ 		ifNil: [false].
+ 	(String
+ 		streamContents: 
+ 			[:s |
+ 			| context |
+ 			s nextPutAll: '***System error handling failed***'.
+ 			s cr; nextPutAll: aString.
+ 			context := thisContext sender sender.
+ 			20 timesRepeat: [context == nil ifFalse: [s cr; print: (context := context sender)]].
+ 			s cr; nextPutAll: '-------------------------------'.
+ 			hasTranscripter
+ 				ifTrue: [
+ 					s cr; nextPutAll: 'Type CR to enter an emergency evaluator.'.
+ 					s cr; nextPutAll: 'Type any other character to restart.']
+ 				ifFalse: [
+ 					s cr; nextPutAll: 'Type any character to restart.']])
+ 		displayAt: 0 @ 0.
+ 	[Sensor keyboardPressed] whileFalse.
+ 	Sensor keyboard = Character cr ifTrue: [
+ 		hasTranscripter ifTrue: [transcripter emergencyEvaluator]].
+ 	Project current resetDisplay!



More information about the Squeak-dev mailing list