[squeak-dev] The Trunk: Kernel-dtl.656.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Dec 8 00:36:13 UTC 2011


David T. Lewis uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-dtl.656.mcz

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

Name: Kernel-dtl.656
Author: dtl
Time: 7 December 2011, 7:32:57.155 pm
UUID: ddfcad11-16e3-4649-9bda-5fa0dc8254e1
Ancestors: Kernel-dtl.655

For Squeak 4.3 release code freeze, temporarily revert previous ReferenceStream changes due to unresolved issues (see http://lists.squeakfoundation.org/pipermail/squeak-dev/2011-December/162386.html). The updates will be reintroduced following the Squeak 4.3 release.

Packages affected:
  Kernel-Objects
  System-Object Storage
  Tests-Object Storage

=============== Diff against Kernel-dtl.655 ===============

Item was changed:
  ----- Method: Object>>storeDataOn: (in category 'objects from disk') -----
  storeDataOn: aDataStream
  	"Store myself on a DataStream.  Answer self.  This is a low-level DataStream/ReferenceStream method. See also objectToStoreOnDataStream.  NOTE: This method must send 'aDataStream beginInstance:size:' and then (nextPut:/nextPutWeak:) its subobjects.  readDataFrom:size: reads back what we write here."
  	| cntInstVars cntIndexedVars |
  
  	cntInstVars := self class instSize.
  	cntIndexedVars := self basicSize.
  	aDataStream
  		beginInstance: self class
  		size: cntInstVars + cntIndexedVars.
  	1 to: cntInstVars do:
  		[:i | aDataStream nextPut: (self instVarAt: i)].
  
  	"Write fields of a variable length object.  When writing to a dummy 
  		stream, don't bother to write the bytes"
  	((aDataStream byteStream class == DummyStream) and: [self class isBits]) ifFalse: [
+ 		1 to: cntIndexedVars do:
+ 			[:i | aDataStream nextPut: (self basicAt: i)]].
+ !
- 		self class isWeak
- 			ifTrue: [
- 				"For weak classes (for example DependentsArray) write the referenced object only
- 				if referenced from elsewhere in the dumped object graph.
- 				This means, for instance that if we only dump a model, no dependents are stored, 
- 				but if we store a view (i.e. a Morph), it is properly handled as a dependent after the object graph is revived."
- 				1 to: cntIndexedVars do: [ :i |
- 					aDataStream nextPutWeak: (self basicAt: i)]]
- 			ifFalse: [
- 				1 to: cntIndexedVars do: [ :i |
- 					aDataStream nextPut: (self basicAt: i)]]]!




More information about the Squeak-dev mailing list