The Trunk: Kernel-tonyg.1293.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Kernel-tonyg.1293.mcz

commits-2
Tony Garnock-Jones uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-tonyg.1293.mcz

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

Name: Kernel-tonyg.1293
Author: tonyg
Time: 24 January 2020, 3:42:53.891725 pm
UUID: 818c88e4-7f2f-473a-ace7-e286013c078e
Ancestors: Kernel-nice.1292

Repair minor bug in Promise>>resolveWith:.

=============== Diff against Kernel-nice.1292 ===============

Item was changed:
  ----- Method: Promise>>resolveWith: (in category 'resolving') -----
  resolveWith: arg
  "Resolve this promise. If arg is itself a Promise, make this promise depend upon it,
  as detailed in the Promises/A+ spec:
  https://promisesaplus.com/#the-promise-resolution-procedure"
 
  arg isPromise
  ifTrue: [
  arg whenResolved: [:v | self resolveWith: v].
  arg whenRejected: [:e | self rejectWith: e]]
  ifFalse: [
  mutex critical: [
  (state == #pending) ifTrue: [ | worklist |
  value := arg.
  state := #fulfilled.
  worklist := resolvers.
+ resolvers := #().
- resolvers = #().
  rejecters := #().
  worklist do: [:r | self evaluateResolver: r]]]]!