Index: third_party/WebKit/Source/core/editing/VisibleUnits.cpp |
diff --git a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp |
index 02aa28ad9febd56dfd8818de2bec1b76af3997b5..1c7bc8bf2184903859299416aeaaee20b540c408 100644 |
--- a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp |
+++ b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp |
@@ -2821,6 +2821,8 @@ static PositionTemplate<Strategy> mostBackwardCaretPosition( |
if (!startNode) |
return PositionTemplate<Strategy>(); |
+ if (!startNode->document().frame()->selection().inUpdateSelectionIfNeeded()) |
+ DCHECK(!startNode->document().needsLayoutTreeUpdate()); |
// iterate backward from there, looking for a qualified position |
Node* boundary = enclosingVisualBoundary<Strategy>(startNode); |
// FIXME: PositionIterator should respect Before and After positions. |
@@ -2995,6 +2997,8 @@ PositionTemplate<Strategy> mostForwardCaretPosition( |
if (!startNode) |
return PositionTemplate<Strategy>(); |
+ if (!startNode->document().frame()->selection().inUpdateSelectionIfNeeded()) |
+ DCHECK(!startNode->document().needsLayoutTreeUpdate()); |
// iterate forward from there, looking for a qualified position |
Node* boundary = enclosingVisualBoundary<Strategy>(startNode); |
// FIXME: PositionIterator should respect Before and After positions. |