| Index: third_party/WebKit/Source/core/editing/EditingUtilities.cpp
|
| diff --git a/third_party/WebKit/Source/core/editing/EditingUtilities.cpp b/third_party/WebKit/Source/core/editing/EditingUtilities.cpp
|
| index c4fd9c04fa9072c1e1cc67fcd884951b81944d23..938482c99be4adab23803faf9df6327df92a0e93 100644
|
| --- a/third_party/WebKit/Source/core/editing/EditingUtilities.cpp
|
| +++ b/third_party/WebKit/Source/core/editing/EditingUtilities.cpp
|
| @@ -316,18 +316,18 @@ static bool hasEditableLevel(const Node& node, EditableLevel editableLevel) {
|
| // would fire in the middle of Document::setFocusedNode().
|
|
|
| for (const Node& ancestor : NodeTraversal::inclusiveAncestorsOf(node)) {
|
| - if ((ancestor.isHTMLElement() || ancestor.isDocumentNode()) &&
|
| - ancestor.layoutObject()) {
|
| - switch (ancestor.layoutObject()->style()->userModify()) {
|
| - case READ_ONLY:
|
| - return false;
|
| - case READ_WRITE:
|
| - return true;
|
| - case READ_WRITE_PLAINTEXT_ONLY:
|
| - return editableLevel != RichlyEditable;
|
| - }
|
| - NOTREACHED();
|
| - return false;
|
| + if (!ancestor.isHTMLElement() && !ancestor.isDocumentNode())
|
| + continue;
|
| + const ComputedStyle* style = ancestor.computedStyle();
|
| + if (!style)
|
| + continue;
|
| + switch (style->userModify()) {
|
| + case READ_ONLY:
|
| + return false;
|
| + case READ_WRITE:
|
| + return true;
|
| + case READ_WRITE_PLAINTEXT_ONLY:
|
| + return editableLevel != RichlyEditable;
|
| }
|
| }
|
|
|
|
|