On Thu, Apr 16, 2009 at 2:52 PM, Andrey Larionov anlarionov@gmail.comwrote:
Sorry for hestiating, but since Unicode is come and Character ranges are enlarged, should we review this hardcodes?
Of course I was only trying to answer what they were used for. not suggesting they should continue to be used that way.
On Fri, Apr 17, 2009 at 01:09, Eliot Miranda eliot.miranda@gmail.com
wrote:
On Thu, Apr 16, 2009 at 1:05 PM, Andrey Larionov anlarionov@gmail.com wrote:
Investigating reasons of fail FontTest tests i found bug in MultiCompositionScaner (or it maybe some related class). Looks like what Character value: 257 had a special meaning in squeak.
257 was the code THE scan characters primitive answered when it reached
the
end of the input string. 258 was the code it returned when the next character to be output would
have
crOssed over the right-hand margin. Alas none of this is documented in the blue book. You have to extract it from e.g. the Xerox V2.0 sources. Here's the defines from an ancient VM of mine: /* TextConstants pool variables initialised in Text */ #define CrossedX 258 #define EndOfRun 257
If not use StrikeFont everything is well, but if you choose FreeType font the doing something (Character value: 257) asString asTextMorph openInWorld creates an endles loop in composer. It founds character falls in crossedX method (this character is stopCondition) and then remove character from composition and starts again.