The Trunk: System-nice.168.mcz

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

The Trunk: System-nice.168.mcz

commits-2
Nicolas Cellier uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-nice.168.mcz

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

Name: System-nice.168
Author: nice
Time: 18 November 2009, 12:28:13 pm
UUID: d98d8bf5-1d94-b54b-9358-a7534a5c698f
Ancestors: System-mha.167

Incorrect use of StandardFileStream in #condenseChanges
identified in http://code.google.com/p/pharo/issues/detail?id=830

condensing changes and doing modifications before saving the image will mess some non ASCII characters.
a user will generally save as soon as condensed, but above mess can likely happen with scripts.

=============== Diff against System-mha.167 ===============

Item was changed:
  ----- Method: SystemDictionary>>condenseChanges (in category 'housekeeping') -----
  condenseChanges
  "Move all the changes onto a compacted sources file."
  "Smalltalk condenseChanges"
  | f oldChanges count |
  f := FileStream fileNamed: 'ST80.temp'.
  f header; timeStamp.
  'Condensing Changes File...'
  displayProgressAt: Sensor cursorPoint
  from: 0
  to: self classNames size + self traitNames size
  during: [:bar |
  count := 0.
  self
  allClassesAndTraitsDo: [:classOrTrait |
  bar value: (count := count + 1).
  classOrTrait moveChangesTo: f.
  classOrTrait putClassCommentToCondensedChangesFile: f.
  classOrTrait classSide moveChangesTo: f]].
  SmalltalkImage current lastQuitLogPosition: f position.
  f trailer; close.
  oldChanges := SourceFiles at: 2.
  oldChanges close.
  FileDirectory default deleteFileNamed: oldChanges name , '.old';
  rename: oldChanges name toBe: oldChanges name , '.old';
  rename: f name toBe: oldChanges name.
  self setMacFileInfoOn: oldChanges name.
  SourceFiles
  at: 2
+ put: (FileStream oldFileNamed: oldChanges name)!
- put: (StandardFileStream oldFileNamed: oldChanges name)!

Item was changed:
  ----- Method: SystemDictionary>>writeRecentCharacters:toFileNamed: (in category 'sources, change log') -----
  writeRecentCharacters: nCharacters toFileNamed: aFilename
  "Schedule an editable text view on the last n characters of changes."
  | changes |
  changes := SourceFiles at: 2.
  changes setToEnd; skip: nCharacters negated.
+ (FileStream newFileNamed: aFilename) nextPutAll: (changes next: nCharacters); close; open; edit!
- (StandardFileStream newFileNamed: aFilename) nextPutAll: (changes next: nCharacters); close; open; edit!