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

Issue 2396083002: Clear last MouseMove root view in RWHIER if that view gets destroyed (Closed)

Created:
4 years, 2 months ago by kenrb
Modified:
4 years, 2 months ago
Reviewers:
ncarter (slow)
CC:
chromium-reviews, creis+watch_chromium.org, yusukes+watch_chromium.org, shuchen+watch_chromium.org, nasko+codewatch_chromium.org, jam, nona+watch_chromium.org, darin-cc_chromium.org, James Su, site-isolation-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Clear last MouseMove root view in RWHIER if that view gets destroyed Cluster-fuzz has reported some difficult-to-reproduce crashes in the MouseEnter/Leave generation code in RenderWidgetHostInputEventRouter, and there are some very sparse crash reports appearing for that also. These might be caused by race conditions from RenderWidgetHostView tree modifications that get slightly out of sync from the Surface state that is used for hit testing (Surfaces aren't invalidated until RWHVs are deleted, which for some RWHVs is not immediate upon them having Destroy() called). This CL speculatively tries to address the crashes by having SendMouseEnterOrLeaveEvents abort when it discovers the RWHV tree out of sync, and also clearing last_mouse_move_root_view_ when that gets destroyed. BUG=647821, 652209 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/83e4f9ac895d5b42a4b114f3ef964676a40476ff Cr-Commit-Position: refs/heads/master@{#424533}

Patch Set 1 #

Patch Set 2 : Try re-enabling tests #

Total comments: 2

Patch Set 3 : Revised bad cast guard #

Patch Set 4 : Not re-enabling test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+34 lines, -8 lines) Patch
M content/browser/frame_host/render_widget_host_view_child_frame.h View 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/frame_host/render_widget_host_view_child_frame.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_input_event_router.cc View 1 2 2 chunks +17 lines, -8 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.h View 1 chunk +7 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.cc View 1 chunk +4 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (15 generated)
kenrb
Nick: PTAL?
4 years, 2 months ago (2016-10-06 18:48:26 UTC) #7
ncarter (slow)
https://codereview.chromium.org/2396083002/diff/20001/content/browser/renderer_host/render_widget_host_input_event_router.cc File content/browser/renderer_host/render_widget_host_input_event_router.cc (right): https://codereview.chromium.org/2396083002/diff/20001/content/browser/renderer_host/render_widget_host_input_event_router.cc#newcode388 content/browser/renderer_host/render_widget_host_input_event_router.cc:388: CHECK(cur_view->IsRenderWidgetHostViewChildFrame()); If we can't guarantee this via static typing, ...
4 years, 2 months ago (2016-10-07 17:52:27 UTC) #8
kenrb
https://codereview.chromium.org/2396083002/diff/20001/content/browser/renderer_host/render_widget_host_input_event_router.cc File content/browser/renderer_host/render_widget_host_input_event_router.cc (right): https://codereview.chromium.org/2396083002/diff/20001/content/browser/renderer_host/render_widget_host_input_event_router.cc#newcode388 content/browser/renderer_host/render_widget_host_input_event_router.cc:388: CHECK(cur_view->IsRenderWidgetHostViewChildFrame()); On 2016/10/07 17:52:27, ncarter wrote: > If we ...
4 years, 2 months ago (2016-10-07 18:44:24 UTC) #11
ncarter (slow)
lgtm thanks
4 years, 2 months ago (2016-10-07 19:40:57 UTC) #12
kenrb
Hmm, looks like I can't land this yet. I ran Windows bots 3 times yesterday ...
4 years, 2 months ago (2016-10-07 20:11:05 UTC) #15
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/2396083002/60001
4 years, 2 months ago (2016-10-11 18:10:22 UTC) #19
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 2 months ago (2016-10-11 20:36:52 UTC) #21
commit-bot: I haz the power
4 years, 2 months ago (2016-10-11 20:38:27 UTC) #23
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/83e4f9ac895d5b42a4b114f3ef964676a40476ff
Cr-Commit-Position: refs/heads/master@{#424533}

Powered by Google App Engine
This is Rietveld 408576698