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=830condensing 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!