Index: content/renderer/render_widget.cc |
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
index 637ad27559b658c23c9a6c38d8edf55d9d4391b8..e672024a83a2ad346d4f47b98aefcac25225ee99 100644 |
--- a/content/renderer/render_widget.cc |
+++ b/content/renderer/render_widget.cc |
@@ -2308,9 +2308,14 @@ blink::WebWidget* RenderWidget::GetWebWidget() const { |
blink::WebInputMethodController* RenderWidget::GetInputMethodController() |
const { |
- // TODO(ekaramad): Remove this CHECK when GetWebWidget() is |
- // always a WebFrameWidget. |
- CHECK(GetWebWidget()->isWebFrameWidget()); |
+ if (!GetWebWidget()->isWebFrameWidget()) { |
+ // TODO(ekaramad): We should not get here in response to IME IPC or updates |
+ // when the RenderWidget is swapped out. We should top sending IPCs from the |
+ // browser side (https://crbug.com/669219). |
+ // If there is no WebFrameWidget, then there will be no |
+ // InputMethodControllers for a WebLocalFrame. |
+ return nullptr; |
+ } |
return static_cast<blink::WebFrameWidget*>(GetWebWidget()) |
->getActiveWebInputMethodController(); |
} |