[squeak-dev] The Inbox: System-kfr.1036.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Jun 21 18:49:47 UTC 2018

A new version of System was added to project The Inbox:

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

Name: System-kfr.1036
Author: kfr
Time: 21 June 2018, 8:49:18.217801 pm
UUID: 4150334e-4f5f-744c-b5b7-814cef973cc0
Ancestors: System-kfr.1035

Remove classes from SmartRefStream instanceVariable renamed that not are in structures so we avoid false positives

=============== Diff against System-kfr.1035 ===============

Item was changed:
  ----- Method: SmartRefStream>>reshapedClassesIn: (in category 'import image segment') -----
  reshapedClassesIn: outPointers
  	"Look for classes in the outPointer array that have changed shape.  Make a fake class for the old shape.  Return a dictionary mapping Fake classes to Real classes.  Substitute fake classes for real ones in outPointers."
  	| mapFakeClassesToReal |
  	self flag: #bobconv.	
+ 	"make sure we don't try to convert classes not in structures to renamed classes"
+ 	renamed keysDo:[ :renamedClass | structures at: renamedClass ifAbsent:[ renamed removeKey: renamedClass]].
  	mapFakeClassesToReal := IdentityDictionary new.
  	outPointers withIndexDo: [:outp :ind | | originalName fakeCls | 
  		outp isBehavior ifTrue: [
  			originalName := renamed keyAtValue: outp name
  				ifAbsent: [renamedConv at: ind ifAbsent: [outp name]].
+ 			"in DiskProxy>>comeFullyUpOnReload: we saved the name at the index"
- 			structures at: originalName ifAbsent: [originalName := outp name]. "check for false positives in renamed"
- 				"in DiskProxy>>comeFullyUpOnReload: we saved the name at the index"
  			fakeCls := self mapClass: outp origName: originalName.
  			fakeCls == outp ifFalse: [
  				mapFakeClassesToReal at: fakeCls put: outp.
  				outPointers at: ind put: fakeCls]]].
  	^ mapFakeClassesToReal!

More information about the Squeak-dev mailing list