| Index: chrome/browser/renderer_host/resource_message_filter.cc
|
| diff --git a/chrome/browser/renderer_host/resource_message_filter.cc b/chrome/browser/renderer_host/resource_message_filter.cc
|
| index 3dfcf63a928e5243ac3225f3feea51b90e4d7e71..cb65791f4da46d4b1644c7418a0bcb81436be101 100644
|
| --- a/chrome/browser/renderer_host/resource_message_filter.cc
|
| +++ b/chrome/browser/renderer_host/resource_message_filter.cc
|
| @@ -922,18 +922,26 @@ void ResourceMessageFilter::OnClipboardReadHTML(Clipboard::Buffer buffer,
|
| #endif
|
|
|
| void ResourceMessageFilter::OnCheckNotificationPermission(
|
| - const GURL& source_url, const std::string& application_id, int* result) {
|
| + const GURL& source_url, int* result) {
|
| + *result = WebKit::WebNotificationPresenter::PermissionNotAllowed;
|
| +
|
| ChromeURLRequestContext* context = GetRequestContextForURL(source_url);
|
| - if (!application_id.empty() &&
|
| - context->CheckURLAccessToExtensionPermission(
|
| - source_url, application_id, Extension::kNotificationPermission)) {
|
| + if (context->CheckURLAccessToExtensionPermission(source_url,
|
| + Extension::kNotificationPermission)) {
|
| *result = WebKit::WebNotificationPresenter::PermissionAllowed;
|
| return;
|
| }
|
|
|
| // Fall back to the regular notification preferences, which works on an
|
| // origin basis.
|
| - *result = notification_prefs_->HasPermission(source_url.GetOrigin());
|
| + // Note: An earlier implemention of checking the notification permission for
|
| + // extensions persisted the permission in the preferences. To avoid
|
| + // erroneously granting permission to an extension that has since been removed
|
| + // from the preferences, we only check for non-extension schemes. All
|
| + // extension cases (chrome-extension and web-content) are now handled by
|
| + // the above call to CheckURLAccessToExtensionPermission.
|
| + if (!source_url.SchemeIs(chrome::kExtensionScheme))
|
| + *result = notification_prefs_->HasPermission(source_url.GetOrigin());
|
| }
|
|
|
| void ResourceMessageFilter::OnGetMimeTypeFromExtension(
|
|
|