[squeak-dev] The Trunk: Multilingual-nice.108.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Mar 26 00:08:28 UTC 2010


Nicolas Cellier uploaded a new version of Multilingual to project The Trunk:
http://source.squeak.org/trunk/Multilingual-nice.108.mcz

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

Name: Multilingual-nice.108
Author: nice
Time: 26 March 2010, 1:08:03.056 am
UUID: 9798aa40-8c05-4e6d-a675-c581537093fb
Ancestors: Multilingual-cmm.107

Correct CombinedChar>>#add:
-----------------------------------------------
Details:
Compositions classVar is a:
<Dictionary
	key: firstLetter charCode
	value: (Dictionary
		key: diacritical charCode
		value: combined charCode)>
combined instVar is a <Character>

Previous code was double bogus:
1) accessing (Compositions at: firstLetter charCode) at: firstLetter charCode
instead of (Compositions at: firstLetter charCode) at: diacritical charCode
2) storing combined charCode (Integer) in combined, instead of a Character.


=============== Diff against Multilingual-cmm.107 ===============

Item was changed:
  ----- Method: CombinedChar>>add: (in category 'composition') -----
  add: char
  
  	| dict elem |
  	codes ifNil: [codes := Array with: char. combined := char. ^ true].
- 
  	dict := Compositions at: combined charCode ifAbsent: [^ false].
+ 	elem := dict at: char charCode ifAbsent: [^ false].
- 
- 	elem := dict at: combined charCode ifAbsent: [^ false].
- 
  	codes := codes copyWith: char.
+ 	combined := Character leadingChar: self base leadingChar code: elem.
- 	combined := elem.
  	^ true.
  !




More information about the Squeak-dev mailing list