Index: extensions/browser/api/web_view/web_view_internal_api.cc |
diff --git a/extensions/browser/api/web_view/web_view_internal_api.cc b/extensions/browser/api/web_view/web_view_internal_api.cc |
index 4b041e911764efabd574034f0e175b015ffebd65..dd9842ad6985207df51b2cf12e617be0fce85875 100644 |
--- a/extensions/browser/api/web_view/web_view_internal_api.cc |
+++ b/extensions/browser/api/web_view/web_view_internal_api.cc |
@@ -102,7 +102,19 @@ bool WebViewInternalExecuteCodeFunction::Init() { |
return false; |
details_ = details.Pass(); |
- return true; |
+ |
+ if (extension()) { |
+ set_host_id(HostID(HostID::EXTENSIONS, extension()->id())); |
+ return true; |
+ } |
+ |
+ WebContents* web_contents = GetSenderWebContents(); |
+ if (web_contents && web_contents->GetWebUI()) { |
+ const GURL& url = render_view_host()->GetSiteInstance()->GetSiteURL(); |
+ set_host_id(HostID(HostID::WEBUI, url.spec())); |
+ return true; |
+ } |
+ return false; |
} |
bool WebViewInternalExecuteCodeFunction::ShouldInsertCSS() const { |