-
rockot authored
Changes ThreadSafeInterfacePtr such that it is no longer possible to create one which is unbound. Instead, it is now possible to create one which will imminently be bound on a specific TaskRunner but which is usable immediately. Also introduces ThreadSafeForwarder as a reduced encapsulation of thread-safe serialization and forwarding logic. This is used to implement ThreadSafeInterfacePtrBase, as well as to support immediate associated request forwarding on IPC::ChannelProxy in a thread-safe manner, where the underlying AssociatedInterfacePtr must remain owned by the channel's IPC::MessagePipeReader. Finally, in order to facilitate IPC::Channel exposing ipc.mojom types through its public interface, the //ipc:mojom target has been folded into //ipc's component exports. Any prior dependents on //ipc:mojom have been updated accordingly. BUG=682334 R=yzshen@chromium.org TEST=ipc_tests, mojo_public_bindings_unittests Review-Url: https://codereview.chromium.org/2668153003 Cr-Commit-Position: refs/heads/master@{#449239}
a628d0b4