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

Issue 770423003: Fix thread-safety of PushMessagingMessageFilter (Closed)

Created:
6 years ago by johnme
Modified:
6 years ago
CC:
chromium-reviews, darin-cc_chromium.org, jam, Michael van Ouwerkerk
Base URL:
https://chromium.googlesource.com/chromium/src.git@mvan-fromworker
Project:
chromium
Visibility:
Public.

Description

Fix thread-safety of PushMessagingMessageFilter It used weak pointers for passing a `this` reference to callbacks that get run on different threads, but weak pointers aren't thread-safe in that way. Since PushMessagingMessagingFilter extends from BrowserMessageFilter which is RefCountedThreadSafe, this patch makes it just pass a scoped_refptr instead (the default behavior of base::Bind). BUG=438316 Committed: https://crrev.com/0bfd983087bfb4c4a982797acbbbb87a914c5e73 Cr-Commit-Position: refs/heads/master@{#306620}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Re-add weakptrs for long-term ui-to-ui callback #

Total comments: 3

Patch Set 3 : Tweak comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+12 lines, -9 lines) Patch
M content/browser/push_messaging/push_messaging_message_filter.h View 1 2 1 chunk +4 lines, -1 line 0 comments Download
M content/browser/push_messaging/push_messaging_message_filter.cc View 1 7 chunks +8 lines, -8 lines 0 comments Download

Messages

Total messages: 12 (3 generated)
johnme
6 years ago (2014-12-02 19:58:23 UTC) #2
Peter Beverloo
lgtm, with a question. https://codereview.chromium.org/770423003/diff/1/content/browser/push_messaging/push_messaging_message_filter.cc File content/browser/push_messaging/push_messaging_message_filter.cc (right): https://codereview.chromium.org/770423003/diff/1/content/browser/push_messaging/push_messaging_message_filter.cc#newcode177 content/browser/push_messaging/push_messaging_message_filter.cc:177: this, render_frame_id, request_id)); Is there ...
6 years ago (2014-12-03 12:21:53 UTC) #3
johnme
Addressed Peter's comment. https://codereview.chromium.org/770423003/diff/1/content/browser/push_messaging/push_messaging_message_filter.cc File content/browser/push_messaging/push_messaging_message_filter.cc (right): https://codereview.chromium.org/770423003/diff/1/content/browser/push_messaging/push_messaging_message_filter.cc#newcode177 content/browser/push_messaging/push_messaging_message_filter.cc:177: this, render_frame_id, request_id)); On 2014/12/03 12:21:53, ...
6 years ago (2014-12-03 15:13:53 UTC) #4
Peter Beverloo
https://codereview.chromium.org/770423003/diff/20001/content/browser/push_messaging/push_messaging_message_filter.h File content/browser/push_messaging/push_messaging_message_filter.h (right): https://codereview.chromium.org/770423003/diff/20001/content/browser/push_messaging/push_messaging_message_filter.h#newcode92 content/browser/push_messaging/push_messaging_message_filter.h:92: base::WeakPtrFactory<PushMessagingMessageFilter> weak_factory_ui_to_ui_; I'm not a fan of this rename. ...
6 years ago (2014-12-03 15:17:34 UTC) #5
johnme
https://codereview.chromium.org/770423003/diff/20001/content/browser/push_messaging/push_messaging_message_filter.h File content/browser/push_messaging/push_messaging_message_filter.h (right): https://codereview.chromium.org/770423003/diff/20001/content/browser/push_messaging/push_messaging_message_filter.h#newcode92 content/browser/push_messaging/push_messaging_message_filter.h:92: base::WeakPtrFactory<PushMessagingMessageFilter> weak_factory_ui_to_ui_; On 2014/12/03 15:17:34, Peter Beverloo wrote: > ...
6 years ago (2014-12-03 15:30:48 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/770423003/40001
6 years ago (2014-12-03 15:31:51 UTC) #8
Michael van Ouwerkerk
https://codereview.chromium.org/770423003/diff/20001/content/browser/push_messaging/push_messaging_message_filter.h File content/browser/push_messaging/push_messaging_message_filter.h (right): https://codereview.chromium.org/770423003/diff/20001/content/browser/push_messaging/push_messaging_message_filter.h#newcode92 content/browser/push_messaging/push_messaging_message_filter.h:92: base::WeakPtrFactory<PushMessagingMessageFilter> weak_factory_ui_to_ui_; On 2014/12/03 15:30:48, johnme wrote: > On ...
6 years ago (2014-12-03 15:35:20 UTC) #10
commit-bot: I haz the power
Committed patchset #3 (id:40001)
6 years ago (2014-12-03 16:24:50 UTC) #11
commit-bot: I haz the power
6 years ago (2014-12-03 16:25:43 UTC) #12
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/0bfd983087bfb4c4a982797acbbbb87a914c5e73
Cr-Commit-Position: refs/heads/master@{#306620}

Powered by Google App Engine
This is Rietveld 408576698