Levente Uzonyi uploaded a new version of Collections to project The Trunk: http://source.squeak.org/trunk/Collections-ul.823.mcz
==================== Summary ====================
Name: Collections-ul.823 Author: ul Time: 22 March 2019, 12:04:40.596433 pm UUID: 2fef1e34-e45a-4f70-bb7b-56aa1c610df9 Ancestors: Collections-pre.822
Fixed bug in Heap >> #upHeap:. When the first element of a Heap was removed, the index of the first object was not always updated.
=============== Diff against Collections-pre.822 ===============
Item was changed: ----- Method: Heap>>upHeap: (in category 'private-heap') ----- upHeap: anIndex "Check the heap upwards for correctness starting at anIndex. Everything below anIndex is ok."
| index parentValue parentIndex value | + anIndex = 1 ifTrue: [ + indexUpdateBlock ifNotNil: [ indexUpdateBlock value: (array at: 1) value: 1 ]. + ^self ]. - anIndex = 1 ifTrue: [ ^self ]. value := array at: (index := anIndex). [ index > 1 and: [ parentValue := array at: (parentIndex := index bitShift: -1). sortBlock ifNil: [ value <= parentValue ] ifNotNil: [ sortBlock value: value value: parentValue ] ] ] whileTrue: [ array at: index put: parentValue. indexUpdateBlock ifNotNil: [ indexUpdateBlock value: parentValue value: index ]. index := parentIndex ]. array at: index put: value. indexUpdateBlock ifNotNil: [ indexUpdateBlock value: value value: index ]!
packages@lists.squeakfoundation.org