Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index a0840fbc706d373b09da8aad02abd5eff1fdbbc0..6dc52f0e0121d0ee78671e182771e8bda71be114 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -3263,6 +3263,11 @@ void RenderViewImpl::SyncSelectionIfRequired() { |
} else { |
offset = location; |
text = frame->selectionAsText(); |
+ // http://crbug.com/101435 |
+ // In some case, frame->selectionAsText() returned text's length is not |
+ // equal to the length returned from webview()->caretOrSelectionRange(). |
+ // So we have to set the range according to text.length(). |
+ range.set_end(range.start() + text.length()); |
James Su
2011/10/28 22:05:26
I'm wondering in which case they are not equal?
|
} |
// Sometimes we get repeated didChangeSelection calls from webkit when |