To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=84467 Issue #|84467 Summary|Break iterator hangs with Complex (SA) characters when | CTL language=none Component|l10n Version|OOo 2.3 Platform|All URL| OS/Version|All Status|UNCONFIRMED Status whiteboard| Keywords| Resolution| Issue type|DEFECT Priority|P3 Subcomponent|i18npool Assigned to|er Reported by|kstribley
------- Additional comments from [EMAIL PROTECTED] Tue Dec 11 16:00:59 +0000 2007 ------- Steps to reproduce: -Set the CTL language to [none]. -Type some text in Myanmar/Thai/Lao e.g. မြန်မာ and cut and paste it until it occupies more than one line. The software will hang in an infinite loop. (If you need a Myanmar font, there is one here: http://scripts.sil.org/padauk). I was able to reproduce the hang using a few characters of Lao and Thai as well. Work around: set the CTL language to Thai. I've looked at this in a build of OOG680_m7 with debug enabled for i18npool and ICU. It appears that the RuleBasedBreakIterator created at line 137 in breakiterator_unicode.cxx does not have a breaktype set for the rule dict_word, so it is left at fBreakType=-1. If you have a sequence of "dictionary characters" then the while loop inside RuleBasedBreakIterator::checkDictionary at line 1598 gets in an infinite loop. lbe->findBreaks uses the UnhandledEngine::findBreaks(), which contrary to the comment in rbbi.cpp line 1623, does not change the pointer position at all when breakType is out of range. I think the real bug is that the breakType isn't set in the RuleBasedBreakIterator that OpenOffice loads, but I'm not very familiar with how the data loaded by udata_open was created. It is also possible to prevent the loop by patching the icu_3_6::UnhandledEngine::findBreaks method in brkeng.cpp to still advance the pointer to the end of the range when the breakType is invalid. --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
