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

Issue 2422973003: Fix TextInputClientMac related crashes of Fullscreen RenderWidget (Closed)

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

Description

TextInputClientObsever should skip commands from fullscreen RenderWidgetHosts corresponding to plugins. TextInputClientObserver assumes that the RenderWidget::GetWebWidget() always returns a WebFrameWidget. This is not true when the RenderWidget is a RenderWidgetFullScreen. Therefore, pressing Ctrl+Command+D on a fullscreen flash will lead to a DCHECK firing in dev builds as well as crashes in current Canary. This CL will avoid sending any IPCs from TextInputClientMac to the fullscreen RenderWidget. BUG=656525, 663384 Committed: https://crrev.com/aeb3c5c70a6ab7472e802d424c9c4a628e819283 Cr-Commit-Position: refs/heads/master@{#430842}

Patch Set 1 #

Patch Set 2 #

Total comments: 8

Patch Set 3 : Avoid sending the IPC to Fullscreen RenderWidget #

Total comments: 10

Patch Set 4 : Addressing alexmos@'s comments #

Total comments: 2

Patch Set 5 : Fixed a comment #

Patch Set 6 : Rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+55 lines, -12 lines) Patch
M content/browser/renderer_host/render_widget_host_delegate.h View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_delegate.cc View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/renderer_host/text_input_client_mac.mm View 1 2 3 5 chunks +36 lines, -8 lines 0 comments Download
M content/browser/web_contents/web_contents_impl.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/web_contents/web_contents_impl.cc View 1 2 3 4 5 2 chunks +8 lines, -4 lines 0 comments Download

Messages

Total messages: 47 (28 generated)
EhsanK
Please, take a look. Thanks! https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc#newcode89 content/renderer/text_input_client_observer.cc:89: if (GetWebFrameWidget()) { When ...
4 years, 2 months ago (2016-10-18 01:59:37 UTC) #6
Avi (use Gerrit)
Daniel/Lucas, thoughts on fixing this at the IPC level? https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc#newcode89 content/renderer/text_input_client_observer.cc:89: ...
4 years, 2 months ago (2016-10-18 02:04:08 UTC) #8
EhsanK
Thanks avi@! +alexmos@ for review and feedback on fullscreen plugin RWH. PTAL.
4 years, 2 months ago (2016-10-18 03:58:08 UTC) #9
EhsanK
Actually adding alexmos@.
4 years, 2 months ago (2016-10-18 03:58:29 UTC) #11
alexmos
https://chromiumcodereview.appspot.com/2422973003/diff/20001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://chromiumcodereview.appspot.com/2422973003/diff/20001/content/renderer/text_input_client_observer.cc#newcode89 content/renderer/text_input_client_observer.cc:89: if (GetWebFrameWidget()) { On 2016/10/18 02:04:08, Avi wrote: > ...
4 years, 2 months ago (2016-10-18 17:52:01 UTC) #12
EhsanK
On 2016/10/18 17:52:01, alexmos wrote: > https://chromiumcodereview.appspot.com/2422973003/diff/20001/content/renderer/text_input_client_observer.cc > File content/renderer/text_input_client_observer.cc (right): > > https://chromiumcodereview.appspot.com/2422973003/diff/20001/content/renderer/text_input_client_observer.cc#newcode89 > ...
4 years, 2 months ago (2016-10-18 21:49:05 UTC) #13
alexmos
> > Just to clarify, is this whole class for Mac dictionary popup? How should ...
4 years, 2 months ago (2016-10-19 17:31:43 UTC) #14
lfg
https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc#newcode117 content/renderer/text_input_client_observer.cc:117: PepperPluginInstanceImpl* focused_plugin = GetFocusedPepperPlugin(); This looks strange to me. ...
4 years, 2 months ago (2016-10-19 17:40:33 UTC) #15
EhsanK
Sorry for the delay in response. PTAL. I think at this point we should just ...
4 years, 1 month ago (2016-11-03 07:13:19 UTC) #21
alexmos
A couple of comments, but overall I think not sending these IPCs to fullscreen RWHs ...
4 years, 1 month ago (2016-11-04 20:34:04 UTC) #22
EhsanK
Thanks Alex! PTAL. https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://codereview.chromium.org/2422973003/diff/20001/content/renderer/text_input_client_observer.cc#newcode89 content/renderer/text_input_client_observer.cc:89: if (GetWebFrameWidget()) { On 2016/11/04 20:34:03, ...
4 years, 1 month ago (2016-11-08 16:59:44 UTC) #23
alexmos
Thanks, LGTM with nits. https://codereview.chromium.org/2422973003/diff/60001/content/browser/renderer_host/render_widget_host_delegate.h File content/browser/renderer_host/render_widget_host_delegate.h (right): https://codereview.chromium.org/2422973003/diff/60001/content/browser/renderer_host/render_widget_host_delegate.h#newcode207 content/browser/renderer_host/render_widget_host_delegate.h:207: // Returns the current flash ...
4 years, 1 month ago (2016-11-08 18:27:09 UTC) #28
EhsanK
Thanks for the reviews Alex! Please take another look.
4 years, 1 month ago (2016-11-08 18:33:35 UTC) #29
alexmos
LGTM
4 years, 1 month ago (2016-11-08 18:34:10 UTC) #30
Avi (use Gerrit)
lgtm
4 years, 1 month ago (2016-11-08 23:30:49 UTC) #31
EhsanK
Thanks for the reviews! CQ-ing.
4 years, 1 month ago (2016-11-09 00:59:08 UTC) #32
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/2422973003/100001
4 years, 1 month ago (2016-11-09 01:38:05 UTC) #42
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 1 month ago (2016-11-09 03:23:07 UTC) #44
commit-bot: I haz the power
4 years, 1 month ago (2016-11-09 03:25:40 UTC) #46
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/aeb3c5c70a6ab7472e802d424c9c4a628e819283
Cr-Commit-Position: refs/heads/master@{#430842}

Powered by Google App Engine
This is Rietveld 408576698