[squeak-dev] The Trunk: Tools-eem.1167.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Jul 8 00:59:48 UTC 2022

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

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

Name: Tools-eem.1167
Author: eem
Time: 7 July 2022, 5:59:46.432372 pm
UUID: 42d3bf84-0717-43d8-82d6-497190084e1e
Ancestors: Tools-mt.1166

Fix regression in runUntil. doStepUntil: answers self when stepping is to stop for some reason (e.g. user presses shift).  So it should be excluded from the "this expression answered a bogus value" test.

=============== Diff against Tools-mt.1166 ===============

Item was changed:
  ----- Method: Debugger>>runUntil (in category 'code pane menu') -----
  	"Step until an expression evaluates to other than false, reporting an error if it doesn't evaluate to true. Remember the expression in an inst var."
  	| expression receiver context method value |
  	expression := UIManager default 
  					request: 'run until expression is true (shift to disable ui update; shift to break).'
  					initialAnswer: (untilExpression ifNil: 'boolean expression').
  	(expression isNil or: [expression isEmpty]) ifTrue:
  	untilExpression := expression.
  	context := self selectedContext.
  	receiver := context receiver.
  	method := receiver class evaluatorClass new 
  				compiledMethodFor: untilExpression
  				in: context
  				to: receiver
  				notifying: nil
  				ifFail: [^ #failedDoit].
  	value := self doStepUntil: [method valueWithReceiver: receiver arguments: {context}].
+ 	(value ~~ self and: [value ~~ false and: [value ~~ true]]) ifTrue:
- 	(value ~~ false and: [value ~~ true]) ifTrue:
  		[UIManager default inform: 'expression ', (untilExpression contractTo: 40), ' answered ', (value printString contractTo: 20), '!!!!']!

More information about the Squeak-dev mailing list