[Pkg] The Trunk: ST80-eem.228.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Apr 11 18:29:59 UTC 2017

Eliot Miranda uploaded a new version of ST80 to project The Trunk:

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

Name: ST80-eem.228
Author: eem
Time: 11 April 2017, 11:29:49.415405 am
UUID: 3a992a3d-dba9-48e6-8ab9-716c4735bf75
Ancestors: ST80-cmm.227

Fix a regression in ST80-cmm.227 which prevents a debugger opening while another is open.  One should never suspend the active process within a critical: block; doing so prevents the critical: block from completing and hence releasing its lock.  The fix is to pull the suspend out of the critical: block.

=============== Diff against ST80-cmm.227 ===============

Item was changed:
  ----- Method: Debugger class>>mvcOpenContext:label:contents: (in category '*ST80-opening') -----
  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.
  			informExistingDebugger: aContext
  			label: aString.
  		(Debugger mvcContext: aContext)
  			openNotifierContents: contentsStringOrNil
  			label: aString.
+ 		ErrorRecursion := false ].
+ 	Processor activeProcess suspend!
- 		ErrorRecursion := false.
- 		Processor activeProcess suspend ]!

More information about the Packages mailing list