| Index: Source/core/editing/VisibleUnits.cpp
|
| diff --git a/Source/core/editing/VisibleUnits.cpp b/Source/core/editing/VisibleUnits.cpp
|
| index 141fae1f2592a2291037fe38e5fb8c486255591a..025745fdb34889cbe189eb192189ec8591e9e027 100644
|
| --- a/Source/core/editing/VisibleUnits.cpp
|
| +++ b/Source/core/editing/VisibleUnits.cpp
|
| @@ -79,7 +79,7 @@ static Position previousRootInlineBoxCandidatePosition(Node* node, const Visible
|
| Node* highestRoot = highestEditableRoot(visiblePosition.deepEquivalent(), editableType);
|
| Node* previousNode = previousLeafWithSameEditability(node, editableType);
|
|
|
| - while (previousNode && inSameLine(firstPositionInOrBeforeNode(previousNode), visiblePosition))
|
| + while (previousNode && (!previousNode->renderer() || inSameLine(firstPositionInOrBeforeNode(previousNode), visiblePosition)))
|
| previousNode = previousLeafWithSameEditability(previousNode, editableType);
|
|
|
| while (previousNode && !previousNode->isShadowRoot()) {
|
| @@ -101,7 +101,7 @@ static Position nextRootInlineBoxCandidatePosition(Node* node, const VisiblePosi
|
| {
|
| Node* highestRoot = highestEditableRoot(visiblePosition.deepEquivalent(), editableType);
|
| Node* nextNode = nextLeafWithSameEditability(node, editableType);
|
| - while (nextNode && inSameLine(firstPositionInOrBeforeNode(nextNode), visiblePosition))
|
| + while (nextNode && (!nextNode->renderer() || inSameLine(firstPositionInOrBeforeNode(nextNode), visiblePosition)))
|
| nextNode = nextLeafWithSameEditability(nextNode, ContentIsEditable);
|
|
|
| while (nextNode && !nextNode->isShadowRoot()) {
|
|
|