Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[LayoutNG] Fix crash for very long line with
break-word
This patch fixes NGLineBreaker crash when handling a very long line. Because line breaker determines overflow by the position being larger than the available width, it cannot stop if the available width is |LayoutUnit::Max()|. This patch clamps the available width by |LayoutUnit::NearlyMax()| to prevent that. The `word-wrap: break-word` is not necessary to cause the failure, but it makes things worse by setting |ShapeResult| to |nullptr| when overflow occurs for the performance reason. This patch also changes |BreakText| to return whether the overflow occurred or not, rather than callers to determine it from the position. Doing so helps clearer communication with the callers. Bug: 961987 Change-Id: I17eb758aca8b9b6d3e2f328e5b1b49acb83c0a5e
- Loading branch information