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

Issue 2772983002: Make sure channel-associated interface pointers are always safe to call. (Closed)

Created:
3 years, 9 months ago by yzshen1
Modified:
3 years, 9 months ago
CC:
chromium-reviews, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, jam, yzshen+watch_chromium.org, abarth-chromium, Aaron Boodman, darin-cc_chromium.org, darin (slow to review)
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Make sure channel-associated interface pointers are always safe to call. Previously, GetRemoteAssociatedInterface() could drop the associated request if the channel was not connected. It would lead to crash when the corresponding associated interface pointer is used to make calls. This CL makes the request associated with a dedicated, disconnected message pipe instead of dropping it. That way it is safe to make calls with the interface pointer. BUG=704504 Review-Url: https://codereview.chromium.org/2772983002 Cr-Commit-Position: refs/heads/master@{#459642} Committed: https://chromium.googlesource.com/chromium/src/+/34dcca73d8f6406f791804d4ee90a60191878573

Patch Set 1 #

Total comments: 2

Patch Set 2 : . #

Unified diffs Side-by-side diffs Delta from patch set Stats (+46 lines, -2 lines) Patch
M ipc/ipc_channel_mojo.cc View 1 1 chunk +7 lines, -1 line 0 comments Download
M ipc/ipc_sync_message_filter.cc View 1 1 chunk +6 lines, -1 line 0 comments Download
M mojo/public/cpp/bindings/BUILD.gn View 1 chunk +1 line, -0 lines 0 comments Download
M mojo/public/cpp/bindings/associated_interface_ptr.h View 2 chunks +8 lines, -0 lines 0 comments Download
A mojo/public/cpp/bindings/lib/associated_interface_ptr.cc View 1 chunk +18 lines, -0 lines 0 comments Download
M mojo/public/cpp/bindings/tests/associated_interface_unittest.cc View 1 chunk +6 lines, -0 lines 0 comments Download

Messages

Total messages: 14 (9 generated)
yzshen1
Hi, Ken. Please take a look. Thanks!
3 years, 9 months ago (2017-03-23 23:50:43 UTC) #4
Ken Rockot(use gerrit already)
lgtm https://codereview.chromium.org/2772983002/diff/1/ipc/ipc_channel_mojo.cc File ipc/ipc_channel_mojo.cc (right): https://codereview.chromium.org/2772983002/diff/1/ipc/ipc_channel_mojo.cc#newcode485 ipc/ipc_channel_mojo.cc:485: mojo::GetIsolatedInterface(std::move(handle)); nit: I might consider documenting here why ...
3 years, 9 months ago (2017-03-24 19:20:03 UTC) #7
yzshen1
https://codereview.chromium.org/2772983002/diff/1/ipc/ipc_channel_mojo.cc File ipc/ipc_channel_mojo.cc (right): https://codereview.chromium.org/2772983002/diff/1/ipc/ipc_channel_mojo.cc#newcode485 ipc/ipc_channel_mojo.cc:485: mojo::GetIsolatedInterface(std::move(handle)); On 2017/03/24 19:20:03, Ken Rockot wrote: > nit: ...
3 years, 9 months ago (2017-03-25 07:18:15 UTC) #8
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/2772983002/20001
3 years, 9 months ago (2017-03-25 07:18:35 UTC) #11
commit-bot: I haz the power
3 years, 9 months ago (2017-03-25 08:28:50 UTC) #14
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://chromium.googlesource.com/chromium/src/+/34dcca73d8f6406f791804d4ee90...

Powered by Google App Engine
This is Rietveld 408576698