Commit 2f3330a6 authored by Minoru Chikamune's avatar Minoru Chikamune Committed by Commit Bot

Use per-frame task runner for RenderFrameImpl::GetInterfaceProvider.

[Context]
This is a part of an effort to achieve MBI. We want to avoid per-thread task runner as much as possible.

[Previous code]
RenderFrameImpl::GetInterfaceProvider was using per-thread default task runner because task_runner was not specified.

[What this CL does]
Use per-frame task runner for RenderFrameImpl::GetInterfaceProvider instead of per-thread task runner.

[Rlated stack trace]
base::SequencedTaskRunnerHandle::Get()
mojo::internal::GetTaskRunnerToUseFromUserProvidedTaskRunner()
mojo::internal::BindingStateBase::BindInternal()
mojo::internal::BindingState<>::Bind()
mojo::Receiver<>::Bind()
mojo::Receiver<>::Receiver()
mojo::ReceiverSetBase<>::Entry::Entry()
std::__Cr::make_unique<>()
mojo::ReceiverSetBase<>::AddImpl()
mojo::ReceiverSetBase<>::Add()
content::RenderFrameImpl::GetInterfaceProvider()
content::mojom::FrameStubDispatch::Accept()

Bug: 1105403
Change-Id: I9a9c8110ed0746b80cab30604f7ac6f6707211e4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2465607Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Reviewed-by: default avatarKouhei Ueno <kouhei@chromium.org>
Commit-Queue: Minoru Chikamune <chikamune@chromium.org>
Cr-Commit-Position: refs/heads/master@{#816393}
parent a2bcd369
...@@ -3080,7 +3080,9 @@ void RenderFrameImpl::Clone( ...@@ -3080,7 +3080,9 @@ void RenderFrameImpl::Clone(
void RenderFrameImpl::GetInterfaceProvider( void RenderFrameImpl::GetInterfaceProvider(
mojo::PendingReceiver<service_manager::mojom::InterfaceProvider> receiver) { mojo::PendingReceiver<service_manager::mojom::InterfaceProvider> receiver) {
interface_provider_receivers_.Add(this, std::move(receiver)); auto task_runner = GetTaskRunner(blink::TaskType::kInternalDefault);
DCHECK(task_runner);
interface_provider_receivers_.Add(this, std::move(receiver), task_runner);
} }
void RenderFrameImpl::GetCanonicalUrlForSharing( void RenderFrameImpl::GetCanonicalUrlForSharing(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment