[squeak-dev] The Inbox: Multilingual-mt.264.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Feb 16 20:20:42 UTC 2022


A new version of Multilingual was added to project The Inbox:
http://source.squeak.org/inbox/Multilingual-mt.264.mcz

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

Name: Multilingual-mt.264
Author: mt
Time: 16 February 2022, 9:20:40.261327 pm
UUID: dff8f942-385e-ac40-a90a-71d030e710a0
Ancestors: Multilingual-mt.263

Ensure that we only file-in code with Squeak's line endings. If you share .st or .cs files across platforms, line endings might get corrupted, which is a serious issue for literal strings. String comparisons may break in the code you just loaded.

Please review. It slows down chunk reading a bit, I suppose.

=============== Diff against Multilingual-mt.263 ===============

Item was changed:
  ----- Method: TextConverter>>nextChunkFromStream: (in category 'fileIn/Out') -----
  nextChunkFromStream: input
  	"Answer the contents of input, up to the next terminator character. Doubled terminators indicate an embedded terminator character."
  	
  	input skipSeparators.
  	^self
  		parseLangTagFor: (
  			String new: 1000 streamContents: [ :output |
  				| character state |
  				[ 
  					(character := self nextFromStream: input) == nil or: [ 
  						character == $!! and: [ 
  							state := self saveStateOf: input.
  							(self nextFromStream: input) ~~ $!! ] ] ] 
  					whileFalse: [ output nextPut: character ].
  				character ifNotNil: [ 
+ 					self restoreStateOf: input with: state ] ]) withSqueakLineEndings
- 					self restoreStateOf: input with: state ] ])
  		fromStream: input!

Item was changed:
  ----- Method: UTF8TextConverter>>nextChunkFromStream: (in category 'fileIn/Out') -----
  nextChunkFromStream: input
  	"Answer the contents of input, up to the next terminator character. Doubled terminators indicate an embedded terminator character."
  	
  	self skipSeparatorsFrom: input.
  	^self 
  		parseLangTagFor: (
  			self decodeString: (
  				String new: 1000 streamContents: [ :stream |
  					[
+ 						stream nextPutAll: (input basicUpTo: $!!) withSqueakLineEndings.
- 						stream nextPutAll: (input basicUpTo: $!!).
  						input basicNext == $!! ]
  							whileTrue: [ 
  								stream nextPut: $!! ].
  					input atEnd ifFalse: [ input skip: -1 ] ]))
  		fromStream: input!



More information about the Squeak-dev mailing list