|
|
DescriptionCorrect usage of text iterator in idle time spellchecker
Idle time spell checker used to assume that TextIterator::advance()
is no-op when the iterator is already at end, which is incorrect.
This patch fixes the issue by adding |atEnd()| checks.
Note: When at end, TextIterator::advance() should be no-op but is not.
See crbug.com/699747
BUG=679616
TEST=compositing/overflow/do-not-paint-outline-into-composited-scrolling-contents.html
Review-Url: https://codereview.chromium.org/2734393003
Cr-Commit-Position: refs/heads/master@{#455654}
Committed: https://chromium.googlesource.com/chromium/src/+/9ca1914b925d1108499243aeb51dee5d175535af
Patch Set 1 #Patch Set 2 : Remove TODO #
Dependent Patchsets: Messages
Total messages: 28 (17 generated)
The CQ bit was checked by xiaochengh@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Correct usage of text iterator in idle time spellchecker BUG=679616 ========== to ========== Correct usage of text iterator in idle time spellchecker Idle time spell checker used to assume that TextIterator::advance() is no-op when the iterator is already at end, which is incorrect. This patch fixes the issue by adding |atEnd()| checks. Note: When at end, TextIterator::advance() should be no-op but is not. See crbug.com/699747 BUG=679616 ==========
xiaochengh@chromium.org changed reviewers: + tkent@chromium.org, yosin@chromium.org
PTAL. This should be the last blocker of enabling idle time spell checker in tests.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by xiaochengh@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
We already have tests covering this code change, right?
Description was changed from ========== Correct usage of text iterator in idle time spellchecker Idle time spell checker used to assume that TextIterator::advance() is no-op when the iterator is already at end, which is incorrect. This patch fixes the issue by adding |atEnd()| checks. Note: When at end, TextIterator::advance() should be no-op but is not. See crbug.com/699747 BUG=679616 ========== to ========== Correct usage of text iterator in idle time spellchecker Idle time spell checker used to assume that TextIterator::advance() is no-op when the iterator is already at end, which is incorrect. This patch fixes the issue by adding |atEnd()| checks. Note: When at end, TextIterator::advance() should be no-op but is not. See crbug.com/699747 BUG=679616 TEST=compositing/overflow/do-not-paint-outline-into-composited-scrolling-contents.html ==========
On 2017/03/09 at 00:12:12, tkent wrote: > We already have tests covering this code change, right? Yes, by compositing/overflow/do-not-paint-outline-into-composited-scrolling-contents.html.
lgtm
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Discussed with yosin@ and agreed on that TextIterator::advance() should not be called at end. Instead, the function should DCHECK that it's not at end. This aligns with the common design pattern that advancing an iterator beyond end leads to undefined behavior.
The CQ bit was checked by xiaochengh@chromium.org
Removed TODO according to #16. Committing...
The patchset sent to the CQ was uploaded after l-g-t-m from tkent@chromium.org Link to the patchset: https://codereview.chromium.org/2734393003/#ps20001 (title: "Remove TODO")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
lgtm BTW, I change crbug.com/699747 to TextIterator::advance() should have DCHECK(!atEnd()) at the entry of function We should fix callers call advance() when atEnd() returns true.
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by xiaochengh@google.com
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 20001, "attempt_start_ts": 1489026501116710, "parent_rev": "1d11ee282df65fd3558840de0cde9f86aa556fe0", "commit_rev": "9ca1914b925d1108499243aeb51dee5d175535af"}
Message was sent while issue was closed.
Description was changed from ========== Correct usage of text iterator in idle time spellchecker Idle time spell checker used to assume that TextIterator::advance() is no-op when the iterator is already at end, which is incorrect. This patch fixes the issue by adding |atEnd()| checks. Note: When at end, TextIterator::advance() should be no-op but is not. See crbug.com/699747 BUG=679616 TEST=compositing/overflow/do-not-paint-outline-into-composited-scrolling-contents.html ========== to ========== Correct usage of text iterator in idle time spellchecker Idle time spell checker used to assume that TextIterator::advance() is no-op when the iterator is already at end, which is incorrect. This patch fixes the issue by adding |atEnd()| checks. Note: When at end, TextIterator::advance() should be no-op but is not. See crbug.com/699747 BUG=679616 TEST=compositing/overflow/do-not-paint-outline-into-composited-scrolling-contents.html Review-Url: https://codereview.chromium.org/2734393003 Cr-Commit-Position: refs/heads/master@{#455654} Committed: https://chromium.googlesource.com/chromium/src/+/9ca1914b925d1108499243aeb51d... ==========
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as https://chromium.googlesource.com/chromium/src/+/9ca1914b925d1108499243aeb51d... |