Commit 68f2f9ee authored by aa@chromium.org's avatar aa@chromium.org

Add a helpful console message in case web-inaccessible request.

BUG=112620


Review URL: http://codereview.chromium.org/9805004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128157 0039d316-1c4b-4281-b951-d872f2087c98
parent 6a5a2e50
...@@ -6,18 +6,21 @@ ...@@ -6,18 +6,21 @@
#include "base/command_line.h" #include "base/command_line.h"
#include "base/logging.h" #include "base/logging.h"
#include "base/stringprintf.h"
#include "chrome/common/chrome_switches.h" #include "chrome/common/chrome_switches.h"
#include "chrome/common/url_constants.h" #include "chrome/common/url_constants.h"
#include "chrome/common/extensions/extension.h" #include "chrome/common/extensions/extension.h"
#include "chrome/common/extensions/extension_set.h" #include "chrome/common/extensions/extension_set.h"
#include "googleurl/src/gurl.h" #include "googleurl/src/gurl.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h"
// static // static
bool ExtensionResourceRequestPolicy::CanRequestResource( bool ExtensionResourceRequestPolicy::CanRequestResource(
const GURL& resource_url, const GURL& resource_url,
const WebKit::WebFrame* frame, WebKit::WebFrame* frame,
const ExtensionSet* loaded_extensions) { const ExtensionSet* loaded_extensions) {
CHECK(resource_url.SchemeIs(chrome::kExtensionScheme)); CHECK(resource_url.SchemeIs(chrome::kExtensionScheme));
...@@ -59,8 +62,14 @@ bool ExtensionResourceRequestPolicy::CanRequestResource( ...@@ -59,8 +62,14 @@ bool ExtensionResourceRequestPolicy::CanRequestResource(
!(page_url.SchemeIs(chrome::kChromeDevToolsScheme) && !(page_url.SchemeIs(chrome::kChromeDevToolsScheme) &&
!extension->devtools_url().is_empty()) && !extension->devtools_url().is_empty()) &&
!extension->IsResourceWebAccessible(resource_url.path())) { !extension->IsResourceWebAccessible(resource_url.path())) {
LOG(ERROR) << "Denying load of " << resource_url.spec() << " which " std::string message = base::StringPrintf(
<< "is not a web accessible resource."; "Denying load of %s. Resources must be listed in the "
"web_accessible_resources manifest key in order to be loaded by web "
"pages.",
resource_url.spec().c_str());
frame->addMessageToConsole(
WebKit::WebConsoleMessage(WebKit::WebConsoleMessage::LevelError,
WebKit::WebString::fromUTF8(message)));
return false; return false;
} }
......
...@@ -17,7 +17,7 @@ class ExtensionResourceRequestPolicy { ...@@ -17,7 +17,7 @@ class ExtensionResourceRequestPolicy {
public: public:
// Returns true if the |resource_url| can be requested from |frame_url|. // Returns true if the |resource_url| can be requested from |frame_url|.
static bool CanRequestResource(const GURL& resource_url, static bool CanRequestResource(const GURL& resource_url,
const WebKit::WebFrame* frame, WebKit::WebFrame* frame,
const ExtensionSet* loaded_extensions); const ExtensionSet* loaded_extensions);
private: private:
......
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