Use nullopt when the non-hangable-run-end is not applicable #25648
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The new trailing space logic refactoring, landed in r806928 and relanded
again in 807457, assigned the current offset as the non-hangable-run-end
when this is not applicable.
The root cause of this issue is that this offset must not exceed the
item s range-end, so that we clamp it to this range-end value. However,
since in some cases we use the original offset as the the
non-hangable-run-end, we may lead to a situation where the offset used
exceed the item's range end. This is precisely the DCHECK violation
described in the issue 1130288.
Since r808007 we have decided to use optional values for the
non-hangable-run-end, but we didn't update the implementation of the
PreviousBreakOpportunities and NextBreakOpportunities functions
accordingly.
Bug: 1130288
Change-Id: If5e5fb380320ca54f7a6d17d1c2bd020a643e12e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2421728
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Javier Fernandez <jfernandez@igalia.com>
Cr-Commit-Position: refs/heads/master@{#809016}