/* Initial conversions */
switch (currentClass) {
+ case 0: // Unassigned codepoint: same treatment as AI
case LineBreakUtils.LINE_BREAK_PROPERTY_AI:
case LineBreakUtils.LINE_BREAK_PROPERTY_SG:
case LineBreakUtils.LINE_BREAK_PROPERTY_XX:
documents. Example: the fix of marks layering will be such a case when it's done.
-->
<release version="FOP Trunk" date="TBD">
+ <action context="Code" dev="AD" type="fix" fixes-bug="50471">
+ Bugfix: avoid ArrayIndexOutOfBoundsException for codepoints without a linebreak class
+ </action>
<action context="Layout" dev="AD" type="fix" fixes-bug="48380">
Bugfix: avoid ClassCastException when using fox:widow-content-limit
</action>
"^^^^^^" + "^" + "_^^^^"
));
+ // Unassigned codepoint: should yield same result as AL
+ assertTrue(testBreak(
+ "No" + "\u1F7E" + "break",
+ "^^" + "^" + "^^^^^"
+ ));
+
}
/**
assertEquals(LineBreakUtils.getLineBreakProperty('\n'), LineBreakUtils.LINE_BREAK_PROPERTY_LF);
assertEquals(LineBreakUtils.getLineBreakProperty('\r'), LineBreakUtils.LINE_BREAK_PROPERTY_CR);
assertEquals(LineBreakUtils.getLineBreakProperty('('), LineBreakUtils.LINE_BREAK_PROPERTY_OP);
+ assertEquals(LineBreakUtils.getLineBreakProperty('\u1F7E'), 0);
}
public void testLineBreakPair() {