Index: chrome/browser/extensions/api/guest_view/guest_view_internal_api.cc |
diff --git a/chrome/browser/extensions/api/guest_view/guest_view_internal_api.cc b/chrome/browser/extensions/api/guest_view/guest_view_internal_api.cc |
index f16f353a40eb2879fd157a08d2b2ac8e9b59cd4e..0e898a49a3ab8168de7916394bb02e447ab85941 100644 |
--- a/chrome/browser/extensions/api/guest_view/guest_view_internal_api.cc |
+++ b/chrome/browser/extensions/api/guest_view/guest_view_internal_api.cc |
@@ -33,12 +33,19 @@ bool GuestViewInternalCreateGuestFunction::RunAsync() { |
GuestViewManager::WebContentsCreatedCallback callback = |
base::Bind(&GuestViewInternalCreateGuestFunction::CreateGuestCallback, |
this); |
+ |
+ content::WebContents* embedder_web_contents = |
+ content::WebContents::FromRenderViewHost(render_view_host()); |
+ if (!embedder_web_contents) { |
+ error_ = "Guest views can only be embedded in web content"; |
+ return false; |
+ } |
+ |
guest_view_manager->CreateGuest(view_type, |
extension_id(), |
- GetAssociatedWebContents(), |
+ embedder_web_contents, |
*create_params, |
callback); |
- |
return true; |
} |