Instead of resetting it to false, do a proper test to see whether
there is a separator at the end of the row.
Fixes bug #10180.
// if the row is too large, try to cut at last separator. In case
// of success, reset indication that the row was broken abruptly.
if (row.shortenIfNeeded(body_pos, width))
- row.right_boundary(false);
+ row.right_boundary(!row.empty() && row.back().endpos == row.endpos());
// make sure that the RTL elements are in reverse ordering
row.reverseRTL(is_rtl);