[squeak-dev] The Trunk: Collections-cmm.674.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Jan 1 21:43:35 UTC 2016


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

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

Name: Collections-cmm.674
Author: cmm
Time: 1 January 2016, 3:43:14.755 pm
UUID: 452abff3-64a7-416c-bea5-05d143213289
Ancestors: Collections-eem.672

Don't convert FinalizationDependents to a strongly-referencing Array when growing it, leave it weak.

=============== Diff against Collections-eem.672 ===============

Item was changed:
  ----- Method: WeakArray class>>addWeakDependent: (in category 'accessing') -----
  addWeakDependent: anObject
  
  	FinalizationLock
  		critical: [
  			| emptySlotIndex |
  			emptySlotIndex := FinalizationDependents 
  				identityIndexOf: nil
  				ifAbsent: [ 
  					| newIndex |
  					newIndex := FinalizationDependents size + 1.
  					"Grow linearly"
+ 					FinalizationDependents := (FinalizationDependents grownBy: 10) as: WeakArray.
- 					FinalizationDependents := FinalizationDependents grownBy: 10.
  					newIndex ].
  			FinalizationDependents at: emptySlotIndex put: anObject ]
  		ifError: [ :msg :rcvr | rcvr error: msg ]!

Item was changed:
+ (PackageInfo named: 'Collections') postscript: 'WeakArray restartFinalizationProcess'!
- (PackageInfo named: 'Collections') postscript: 'CharacterSet allInstancesDo: #size'!



More information about the Squeak-dev mailing list