[squeak-dev] The Trunk: ST80-cmm.227.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Apr 4 20:58:02 UTC 2017


Chris Muller uploaded a new version of ST80 to project The Trunk:
http://source.squeak.org/trunk/ST80-cmm.227.mcz

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

Name: ST80-cmm.227
Author: cmm
Time: 4 April 2017, 3:54:17.967782 pm
UUID: e738a074-c662-4707-81e2-92802a6bc926
Ancestors: ST80-eem.226

Fix the race condition introduced with Debugger>>'ErrorRecursion' which was causing an inescapable Emergency Evaluator to appear even when there was no recursion.

=============== Diff against ST80-eem.226 ===============

Item was changed:
  ----- Method: Debugger class>>mvcOpenContext:label:contents: (in category '*ST80-opening') -----
+ mvcOpenContext: aContext label: aString contents: contentsStringOrNil 
- mvcOpenContext: aContext label: aString contents: contentsStringOrNil
  	"Open a notifier in response to an error, halt, or notify. A notifier view just shows a short view of the sender stack and provides a menu that lets the user open a full debugger."
+ 	"Simulation guard"
+ 	<primitive: 19>
+ 	ErrorRecursionGuard critical:
+ 		[ ErrorRecursion not & Preferences logDebuggerStackToFile ifTrue:
+ 			[ Smalltalk
+ 				logSqueakError: aString
+ 				inContext: aContext ].
+ 		ErrorRecursion ifTrue:
+ 			[ ErrorRecursion := false.
+ 			self primitiveError: aString ].
+ 		ErrorRecursion := true.
+ 		self
+ 			informExistingDebugger: aContext
+ 			label: aString.
+ 		(Debugger mvcContext: aContext)
+ 			openNotifierContents: contentsStringOrNil
+ 			label: aString.
- 	<primitive: 19> "Simulation guard"
- 	ErrorRecursion not & Preferences logDebuggerStackToFile ifTrue:
- 		[Smalltalk logSqueakError: aString inContext: aContext].
- 	ErrorRecursion ifTrue:[
  		ErrorRecursion := false.
+ 		Processor activeProcess suspend ]!
- 		self primitiveError: aString].
- 	ErrorRecursion := true.
- 	self informExistingDebugger: aContext label: aString.
- 	(Debugger mvcContext: aContext)
- 		openNotifierContents: contentsStringOrNil
- 		label: aString.
- 	ErrorRecursion := false.
- 	Processor activeProcess suspend.!



More information about the Squeak-dev mailing list