Commit 016ad08a authored by Lucas Furukawa Gadani's avatar Lucas Furukawa Gadani Committed by Commit Bot

Portals: Enforce that portals is enabled when creating the Portal interface.

Change-Id: I65796ae20779fd4e32b174e75263246962d9366a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1798884Reviewed-by: default avatarNasko Oskov <nasko@chromium.org>
Commit-Queue: Lucas Gadani <lfg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#696899}
parent 6fc1a67b
...@@ -78,6 +78,13 @@ Portal* Portal::Create( ...@@ -78,6 +78,13 @@ Portal* Portal::Create(
RenderFrameHostImpl* owner_render_frame_host, RenderFrameHostImpl* owner_render_frame_host,
mojo::PendingAssociatedReceiver<blink::mojom::Portal> receiver, mojo::PendingAssociatedReceiver<blink::mojom::Portal> receiver,
mojo::PendingAssociatedRemote<blink::mojom::PortalClient> client) { mojo::PendingAssociatedRemote<blink::mojom::PortalClient> client) {
if (!IsEnabled()) {
mojo::ReportBadMessage(
"blink.mojom.Portal can only be used if the Portals feature is "
"enabled.");
return nullptr;
}
auto portal_ptr = base::WrapUnique(new Portal(owner_render_frame_host)); auto portal_ptr = base::WrapUnique(new Portal(owner_render_frame_host));
Portal* portal = portal_ptr.get(); Portal* portal = portal_ptr.get();
portal->binding_ = mojo::MakeStrongAssociatedBinding<blink::mojom::Portal>( portal->binding_ = mojo::MakeStrongAssociatedBinding<blink::mojom::Portal>(
...@@ -97,6 +104,13 @@ void Portal::BindPortalHostReceiver( ...@@ -97,6 +104,13 @@ void Portal::BindPortalHostReceiver(
RenderFrameHostImpl* frame, RenderFrameHostImpl* frame,
mojo::PendingAssociatedReceiver<blink::mojom::PortalHost> mojo::PendingAssociatedReceiver<blink::mojom::PortalHost>
pending_receiver) { pending_receiver) {
if (!IsEnabled()) {
mojo::ReportBadMessage(
"blink.mojom.PortalHost can only be used if the Portals feature is "
"enabled.");
return;
}
WebContentsImpl* web_contents = WebContentsImpl* web_contents =
static_cast<WebContentsImpl*>(WebContents::FromRenderFrameHost(frame)); static_cast<WebContentsImpl*>(WebContents::FromRenderFrameHost(frame));
......
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