| Index: chrome/browser/content_settings/permission_context_base.cc
|
| diff --git a/chrome/browser/content_settings/permission_context_base.cc b/chrome/browser/content_settings/permission_context_base.cc
|
| index d4d5322e4649b89fc745f74b43849acde32dcae8..3eb184f35c351f1ab3a27031d3f3bf1986ca1b50 100644
|
| --- a/chrome/browser/content_settings/permission_context_base.cc
|
| +++ b/chrome/browser/content_settings/permission_context_base.cc
|
| @@ -17,6 +17,7 @@
|
| #include "components/content_settings/core/common/permission_request_id.h"
|
| #include "content/public/browser/browser_thread.h"
|
| #include "content/public/browser/web_contents.h"
|
| +#include "content/public/common/origin_util.h"
|
|
|
| PermissionContextBase::PermissionContextBase(
|
| Profile* profile,
|
| @@ -51,6 +52,9 @@ void PermissionContextBase::RequestPermission(
|
| ContentSetting PermissionContextBase::GetPermissionStatus(
|
| const GURL& requesting_origin,
|
| const GURL& embedding_origin) const {
|
| + if (RestrictToSecureOrigins() && !content::IsOriginSecure(requesting_origin))
|
| + return CONTENT_SETTING_BLOCK;
|
| +
|
| return profile_->GetHostContentSettingsMap()->GetContentSetting(
|
| requesting_origin, embedding_origin, permission_type_, std::string());
|
| }
|
| @@ -104,6 +108,13 @@ void PermissionContextBase::DecidePermission(
|
| return;
|
| }
|
|
|
| + if (RestrictToSecureOrigins() &&
|
| + !content::IsOriginSecure(requesting_origin)) {
|
| + NotifyPermissionSet(id, requesting_origin, embedding_origin, callback,
|
| + false /* persist */, CONTENT_SETTING_BLOCK);
|
| + return;
|
| + }
|
| +
|
| ContentSetting content_setting =
|
| profile_->GetHostContentSettingsMap()
|
| ->GetContentSettingAndMaybeUpdateLastUsage(
|
|
|