diff options
Diffstat (limited to 'Source/WebKit')
-rw-r--r-- | Source/WebKit/android/jni/WebViewCore.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Source/WebKit/android/jni/WebViewCore.cpp b/Source/WebKit/android/jni/WebViewCore.cpp index c3937bc..4c65fe6 100644 --- a/Source/WebKit/android/jni/WebViewCore.cpp +++ b/Source/WebKit/android/jni/WebViewCore.cpp @@ -3655,11 +3655,11 @@ String WebViewCore::getInputText(Node* node) text = renderText->text(); else { // It must be content editable field. - Position inNode(node, 0); Position start = firstPositionInNode(node); Position end = lastPositionInNode(node); VisibleSelection allEditableText(start, end); - text = allEditableText.firstRange()->text(); + if (allEditableText.isRange()) + text = allEditableText.firstRange()->text(); } return text; } @@ -4198,12 +4198,14 @@ String WebViewCore::getText(int startX, int startY, int endX, int endY) for (size_t i = 0; i < ranges.size(); i++) { const VisibleSelection& selection = ranges[i]; - PassRefPtr<Range> range = selection.firstRange(); - String textInRange = range->text(); - if (textInRange.length() > 0) { - if (text.length() > 0) - text.append('\n'); - text.append(textInRange); + if (selection.isRange()) { + PassRefPtr<Range> range = selection.firstRange(); + String textInRange = range->text(); + if (textInRange.length() > 0) { + if (text.length() > 0) + text.append('\n'); + text.append(textInRange); + } } } |