The Trunk: SMBase-eem.134.mcz

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

The Trunk: SMBase-eem.134.mcz

commits-2
Eliot Miranda uploaded a new version of SMBase to project The Trunk:
http://source.squeak.org/trunk/SMBase-eem.134.mcz

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

Name: SMBase-eem.134
Author: eem
Time: 22 August 2015, 10:07:47.773 am
UUID: ddf45ed9-070e-4ad7-a5e4-7cda58d32af4
Ancestors: SMBase-bf.133

Reimplement the post-load enumeration of loaded objects to use the revised primitive available in the VMMaker.oscog-eem.1441 /3427 VMs that becomes the loaded segment into an Array of the loaded objects.  Hence endMarker disappears and allObjectsDo: is trivially implemented as do: sent to the segment.

This change requires users to upgrade their VMs but as the alternative is crashes in ImageSegment loads this is acceptable.  AFAIA this fixes ImageSegments in Spur but they clearly need pounding on.

=============== Diff against SMBase-bf.133 ===============

Item was changed:
  ----- Method: ImageSegment>>writeForExportOn: (in category '*SMBase-export') -----
  writeForExportOn: fileStream
  "Write the segment on the disk with all info needed to reconstruct it in a new image.  For export.  Out pointers are encoded as normal objects on the disk."
 
- | temp |
  state = #activeCopy ifFalse: [self error: 'wrong state'].
- temp := endMarker.
- endMarker := nil.
  fileStream fileOutClass: nil andObject: self.
+ "remember extra structures.  Note class names."!
- "remember extra structures.  Note class names."
- endMarker := temp.
- !