Missing Thai break data results in crash in ParagraphLayout
General
Trac Data
Other Data
General
Trac Data
Other Data
Description
Absent a icudt53l-brkitr data file, BreakIterator::createLineInstance() returns NULL which ParagraphLayout dereferences unconditionally at line 999 (as fBreakIterator, in previousBreak()), crashing the process. IWBN to degrade more gracefully: warn about lack of Thai breaking and don't crash, or even allow the client to say they don't care about Thai breaking and don't even try for this.
A workaround is to give ParagraphLayout::nextLine() an argument of 0, which prevents breaking.
Activity
Show:
Markus Scherer
July 22, 2020 at 11:32 PM
tracReporter=fischman
UnicodeBot
June 30, 2018 at 11:42 PM
Trac Comment 6 by —2015-10-07T17:35:44.610Z
So, perhaps MissingResourceError on the constructor? That mightr be heavyweight.
Or perhaps missing resource error on a subsequent call.
Absent a icudt53l-brkitr data file, BreakIterator::createLineInstance() returns NULL which ParagraphLayout dereferences unconditionally at line 999 (as fBreakIterator, in previousBreak()), crashing the process. IWBN to degrade more gracefully: warn about lack of Thai breaking and don't crash, or even allow the client to say they don't care about Thai breaking and don't even try for this.
A workaround is to give ParagraphLayout::nextLine() an argument of 0, which prevents breaking.