<br><br><div class="gmail_quote">On Thu, Apr 16, 2009 at 1:05 PM, Andrey Larionov <span dir="ltr">&lt;<a href="mailto:anlarionov@gmail.com">anlarionov@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Investigating reasons of fail FontTest tests i found bug in<br>
MultiCompositionScaner (or it maybe some related class). Looks like<br>
what Character value: 257 had a special meaning in squeak. </blockquote><div><br></div><div>257 was the code THE scan characters primitive answered when it reached the end of the input string.</div><div>258 was the code it returned when the next character to be output would have crOssed over the right-hand margin.</div>
<div><br></div><div>Alas none of this is documented in the blue book.  You have to extract it from e.g. the Xerox V2.0 sources.</div><div><br></div><div>Here&#39;s the defines from an ancient VM of mine:</div><div><br></div>
<div><div>/* TextConstants pool variables initialised in Text */</div><div><br></div><div>#define CrossedX 258</div><div>#define EndOfRun 257</div><div><br></div></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
If not use<br>
StrikeFont everything is well, but if you choose FreeType font the<br>
doing something<br>
(Character value: 257) asString asTextMorph openInWorld<br>
creates an endles loop in composer. It founds character falls in<br>
crossedX method (this character is stopCondition) and then remove<br>
character from composition and starts again.<br>
<br>
</blockquote></div><br>