WebBluetoothServiceImpl::CrashRendererAndClosePipe should use mojo::ReportBadMessage |
||||||
Issue descriptionIn the browser process, this will kill the bad process. I believe this will automatically disconnect the relevant message pipe as well (+rockot to confirm this). I think we should probably be preferring this in Mojo code over the legacy APIs.
,
Jan 16 2017
I'm a bit concerned about the "eventually" part. If say we call mojo::ReportBadMessage and subsequently drop the callback will we get any errors?
,
Jan 17 2017
When you report a bad message for a request that expects a response, you should also either invoke the response callback anyway, or close the binding endpoint which received the request. If the endpoint is closed, it's safe to drop callbacks.
,
Jan 17 2017
,
Jan 17 2017
rockot@, is it possible for ReportBadMesage to just close the message pipe in question when this happens? Or does mojo not have enough information on the stack to make that determination?
,
Jan 17 2017
There isn't enough information in the stack, and it would also be weird since the pipe is ultimately owned by a single ScopedMessagePipeHandle, which is in turn owned at the bindings layer. Bad message reporting happens below the bindings layer. We could always have ReportBadMessage take a ScopedMessagePipeHandle and require the underlying C API to take a handle as well. But then it's easy for users to unintentionally pass the wrong pipe.
,
Feb 13 2017
,
Nov 8 2017
,
Jan 9 2018
,
Oct 17
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by roc...@chromium.org
, Jan 13 2017