[squeak-dev] The Trunk: Collections-fbs.513.mcz

Chris Muller asqueaker at gmail.com
Fri Apr 26 16:17:02 UTC 2013


I'm glad this method isn't called as part of regular binary writes to
a WriteStream (if it were I'd be jumping up and down), but I still
agree with Bert.  This is not the right method to be #flush'ing from.
It should be fixed in the VM or flush from a higher level.

On Fri, Apr 26, 2013 at 9:41 AM, Bert Freudenberg <bert at freudenbergs.de> wrote:
>
> On 2013-04-26, at 14:05, commits at source.squeak.org wrote:
>
>> Frank Shearar uploaded a new version of Collections to project The Trunk:
>> http://source.squeak.org/trunk/Collections-fbs.513.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Collections-fbs.513
>> Author: fbs
>> Time: 26 April 2013, 11:13:00.656 am
>> UUID: dba4f808-6844-414c-a5bf-5cda0cf4e342
>> Ancestors: Collections-bf.512
>>
>> This fixes the recent report of an Ubuntu 13.04 machine not being able to save a class comment.
>>
>> https://bugzilla.redhat.com/show_bug.cgi?id=956376
>>
>> =============== Diff against Collections-bf.512 ===============
>>
>> Item was changed:
>>  ----- Method: WriteStream>>nextChunkPut: (in category 'fileIn/Out') -----
>>  nextChunkPut: aString
>>       "Append the argument, aString, to the receiver, doubling embedded terminators."
>>
>>       | i remainder terminator |
>>       terminator := $!!.
>>       remainder := aString.
>>       [(i := remainder indexOf: terminator) = 0] whileFalse:
>>               [self nextPutAll: (remainder copyFrom: 1 to: i).
>>               self nextPut: terminator.  "double imbedded terminators"
>>               remainder := remainder copyFrom: i+1 to: remainder size].
>>       self nextPutAll: remainder.
>>       aString includesUnifiedCharacter ifTrue: [
>>               self nextPut: terminator.
>>               self nextPutAll: ']lang['.
>>               aString writeLeadingCharRunsOn: self.
>>       ].
>>       self nextPut: terminator.
>> +     self flush.
>>  !
>
>
> This just papers over the problem, does not fix it.
>
> We need to figure out what the problem is on the VM side.
>
> IMHO this should not be in trunk.
>
> - Bert -
>
>
>


More information about the Squeak-dev mailing list