Index: views/controls/textfield/native_textfield_views.cc |
diff --git a/views/controls/textfield/native_textfield_views.cc b/views/controls/textfield/native_textfield_views.cc |
index d2fbb143179bdf44fa776d04f4d2e91639428127..07725fffba6e7513e1f4288c3917505fb99ddf15 100644 |
--- a/views/controls/textfield/native_textfield_views.cc |
+++ b/views/controls/textfield/native_textfield_views.cc |
@@ -791,11 +791,15 @@ bool NativeTextfieldViews::DeleteRange(const ui::Range& range) { |
bool NativeTextfieldViews::GetTextFromRange( |
const ui::Range& range, |
- const base::Callback<void(const string16&)>& callback) { |
- if (GetTextInputType() != ui::TEXT_INPUT_TYPE_TEXT || range.is_empty()) |
+ string16* text) { |
+ if (GetTextInputType() != ui::TEXT_INPUT_TYPE_TEXT || !range.IsValid()) |
+ return false; |
+ |
+ ui::Range text_range; |
+ if (!GetTextRange(&text_range) || !text_range.Contains(range)) |
return false; |
- callback.Run(model_->GetTextFromRange(range)); |
+ *text = model_->GetTextFromRange(range); |
return true; |
} |