Levente Uzonyi uploaded a new version of Multilingual to project The Trunk:
http://source.squeak.org/trunk/Multilingual-ul.156.mcz==================== Summary ====================
Name: Multilingual-ul.156
Author: ul
Time: 17 August 2012, 11:46:39.54 pm
UUID: f231c73f-47cf-a740-9ba6-c5580464cc7a
Ancestors: Multilingual-edc.155
- fix an indexing bug in TextConverter >> #next:putAll:startingAt:toStream:
=============== Diff against Multilingual-edc.155 ===============
Item was changed:
----- Method: TextConverter>>next:putAll:startingAt:toStream: (in category 'conversion') -----
next: anInteger putAll: aString startingAt: startIndex toStream: aStream
"Handle fast conversion if ByteString"
| lastIndex nextIndex |
aString class == ByteString ifFalse: [
startIndex to: startIndex + anInteger - 1 do: [ :index |
self nextPut: (aString at: index) toStream: aStream ].
^aString ].
aStream isBinary ifTrue: [
aStream basicNext: anInteger putAll: aString startingAt: startIndex.
^aString ].
lastIndex := startIndex.
[ (nextIndex := ByteString
findFirstInString: aString
inSet: latin1Map
+ startingAt: lastIndex) = 0 or: [ anInteger + startIndex <= nextIndex ] ] whileFalse: [
- startingAt: lastIndex) = 0 or: [ nextIndex > anInteger ] ] whileFalse: [
aStream
basicNext: nextIndex - lastIndex putAll: aString startingAt: lastIndex;
basicNextPutAll: (latin1Encodings at: (aString byteAt: nextIndex) + 1).
lastIndex := nextIndex + 1 ].
aStream basicNext: anInteger - lastIndex + startIndex putAll: aString startingAt: lastIndex.
^aString!