Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: chrome/renderer/extensions/extension_resource_request_policy.cc

Issue 9909019: Add schema chrome-extension-resource:// for extension resources (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Update Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/renderer/extensions/extension_resource_request_policy.h" 5 #include "chrome/renderer/extensions/extension_resource_request_policy.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/stringprintf.h" 9 #include "base/stringprintf.h"
10 #include "chrome/common/chrome_switches.h" 10 #include "chrome/common/chrome_switches.h"
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 resource_url.spec().c_str()); 69 resource_url.spec().c_str());
70 frame->addMessageToConsole( 70 frame->addMessageToConsole(
71 WebKit::WebConsoleMessage(WebKit::WebConsoleMessage::LevelError, 71 WebKit::WebConsoleMessage(WebKit::WebConsoleMessage::LevelError,
72 WebKit::WebString::fromUTF8(message))); 72 WebKit::WebString::fromUTF8(message)));
73 return false; 73 return false;
74 } 74 }
75 75
76 return true; 76 return true;
77 } 77 }
78 78
79 // static
80 bool ExtensionResourceRequestPolicy::CanRequestExtensionResourceScheme(
81 const GURL& resource_url,
82 WebKit::WebFrame* frame,
83 const ExtensionSet* loaded_extensions) {
84 CHECK(resource_url.SchemeIs(chrome::kExtensionResourceScheme));
85
86 GURL frame_url = frame->document().url();
87 if (!frame_url.is_empty() &&
88 !frame_url.SchemeIs(chrome::kExtensionScheme)) {
89 std::string message = base::StringPrintf(
90 "Denying load of %s. chrome-extension-resources:// can only be "
91 "loaded from extensions.",
92 resource_url.spec().c_str());
93 frame->addMessageToConsole(
94 WebKit::WebConsoleMessage(WebKit::WebConsoleMessage::LevelError,
95 WebKit::WebString::fromUTF8(message)));
96 return false;
97 }
98
99 return true;
100 }
101
79 ExtensionResourceRequestPolicy::ExtensionResourceRequestPolicy() { 102 ExtensionResourceRequestPolicy::ExtensionResourceRequestPolicy() {
80 } 103 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698