Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(388)

Issue 2522353002: Remove the CHECK in RenderWidget::GetInputMethodController (Closed)

Created:
4 years ago by EhsanK
Modified:
3 years, 11 months ago
CC:
chromium-reviews, mlamouri+watch-content_chromium.org, jam, darin-cc_chromium.org, site-isolation-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Remove the CHECK in RenderWidget::GetInputMethodController Is is possible to trigger CHECK(GetWidget()->isWebFrameWidget()) by sending IPCs after the RenderViewImpl is swapped out. For the brief duration that RenderViewImpl is swapped out but the frame widget is destroyed, we get WebViewImpl from the call to GetWebWidget(). Since the issue reproduces quite often, this CL replaces the CHECK with an if-block and returns early when WebWidget is not a frame widget. BUG=668106 . Committed: https://crrev.com/5a9f52a658eab5f7827159109d425ce0d9176d58 Cr-Commit-Position: refs/heads/master@{#436824}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Alternative Approach: Move getActiveWebInputMethodController() to WebWidget (from WebFrameWidget). #

Patch Set 3 : Removing the override from WebFrameWidget #

Total comments: 2

Patch Set 4 : Addressing creis@'s comments + Removing unused forward dec. #

Total comments: 3

Patch Set 5 : Back to checking for isWebFrameWidget() #

Unified diffs Side-by-side diffs Delta from patch set Stats (+8 lines, -3 lines) Patch
M content/renderer/render_widget.cc View 1 2 3 4 1 chunk +8 lines, -3 lines 0 comments Download

Messages

Total messages: 40 (19 generated)
EhsanK
PTAL. https://codereview.chromium.org/2522353002/diff/1/content/renderer/render_widget.cc File content/renderer/render_widget.cc (right): https://codereview.chromium.org/2522353002/diff/1/content/renderer/render_widget.cc#newcode2315 content/renderer/render_widget.cc:2315: return nullptr; I should also note that this ...
4 years ago (2016-11-24 01:21:39 UTC) #3
ncarter (slow)
lgtm
4 years ago (2016-11-28 18:00:37 UTC) #8
EhsanK
dcheng@chromium.org: Please review changes in
4 years ago (2016-11-28 18:35:50 UTC) #10
EhsanK
Thank you Nick! cc:+lfg@ I will wait for creis@ reviews as well since we had ...
4 years ago (2016-11-28 18:40:09 UTC) #11
lfg
The change lgtm, but we should still figure out why are we sending IME messages ...
4 years ago (2016-11-28 19:03:22 UTC) #13
Charlie Reis
content/ LGTM, but I'll defer to dcheng on whether it makes sense in Blink. I'm ...
4 years ago (2016-11-28 19:14:33 UTC) #14
dcheng
Any idea where this is coming from? We've had this bug for awhile, but no ...
4 years ago (2016-11-28 19:17:23 UTC) #15
EhsanK
Thanks for the reviews! dcheng@: As I understand we send a SwapOut message to old ...
4 years ago (2016-11-28 19:27:30 UTC) #16
EhsanK
Answering comments and apologies for the unfortunate rebase while addressing creis@'s comments. I was also ...
4 years ago (2016-11-28 19:30:18 UTC) #17
ncarter (slow)
I'm not sure that extending a CanSendWhileSwappedOut-like approach to RenderWidgetHost is the right direction to ...
4 years ago (2016-11-28 19:45:16 UTC) #20
EhsanK
On 2016/11/28 19:45:16, ncarter wrote: > I'm not sure that extending a CanSendWhileSwappedOut-like approach to ...
4 years ago (2016-11-28 20:33:41 UTC) #21
EhsanK
On 2016/11/28 20:33:41, EhsanK wrote: > On 2016/11/28 19:45:16, ncarter wrote: > > I'm not ...
4 years ago (2016-11-28 20:55:20 UTC) #22
dcheng
LGTM with comments addressed, to highlight that this is a workaround. https://codereview.chromium.org/2522353002/diff/60001/third_party/WebKit/public/web/WebWidget.h File third_party/WebKit/public/web/WebWidget.h (right): ...
4 years ago (2016-12-05 19:19:49 UTC) #23
lfg
https://codereview.chromium.org/2522353002/diff/60001/third_party/WebKit/public/web/WebWidget.h File third_party/WebKit/public/web/WebWidget.h (right): https://codereview.chromium.org/2522353002/diff/60001/third_party/WebKit/public/web/WebWidget.h#newcode240 third_party/WebKit/public/web/WebWidget.h:240: virtual WebInputMethodController* getActiveWebInputMethodController() { On 2016/12/05 19:19:49, dcheng wrote: ...
4 years ago (2016-12-05 19:26:33 UTC) #24
EhsanK
https://codereview.chromium.org/2522353002/diff/60001/third_party/WebKit/public/web/WebWidget.h File third_party/WebKit/public/web/WebWidget.h (right): https://codereview.chromium.org/2522353002/diff/60001/third_party/WebKit/public/web/WebWidget.h#newcode240 third_party/WebKit/public/web/WebWidget.h:240: virtual WebInputMethodController* getActiveWebInputMethodController() { On 2016/12/05 19:26:33, lfg wrote: ...
4 years ago (2016-12-05 19:50:48 UTC) #25
EhsanK
I reverted back to Pacth 1 with a comment and a TODO + bug for ...
4 years ago (2016-12-07 00:38:33 UTC) #28
lfg
On 2016/12/07 00:38:33, EhsanK wrote: > I reverted back to Pacth 1 with a comment ...
4 years ago (2016-12-07 00:56:40 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2522353002/80001
4 years ago (2016-12-07 01:00:26 UTC) #33
EhsanK
Thanks for the reviews! I will try to CQ.
4 years ago (2016-12-07 01:04:14 UTC) #34
commit-bot: I haz the power
Committed patchset #5 (id:80001)
4 years ago (2016-12-07 01:35:53 UTC) #37
commit-bot: I haz the power
4 years ago (2016-12-07 01:39:55 UTC) #39
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/5a9f52a658eab5f7827159109d425ce0d9176d58
Cr-Commit-Position: refs/heads/master@{#436824}

Powered by Google App Engine
This is Rietveld 408576698