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

Side by Side Diff: chrome/browser/content_settings/content_settings_internal_extension_provider.cc

Issue 2909273003: Replace raw ptr from ContentSettingsPattern Builder with unique_ptr (Closed)
Patch Set: Created 3 years, 6 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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/browser/content_settings/content_settings_internal_extension_pr ovider.h" 5 #include "chrome/browser/content_settings/content_settings_internal_extension_pr ovider.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "chrome/browser/pdf/pdf_extension_util.h" 10 #include "chrome/browser/pdf/pdf_extension_util.h"
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 const extensions::Extension* extension, 188 const extensions::Extension* extension,
189 ContentSetting setting) { 189 ContentSetting setting) {
190 SetContentSettingForExtensionAndResource( 190 SetContentSettingForExtensionAndResource(
191 extension, ResourceIdentifier(), setting); 191 extension, ResourceIdentifier(), setting);
192 } 192 }
193 193
194 void InternalExtensionProvider::SetContentSettingForExtensionAndResource( 194 void InternalExtensionProvider::SetContentSettingForExtensionAndResource(
195 const extensions::Extension* extension, 195 const extensions::Extension* extension,
196 const ResourceIdentifier& resource, 196 const ResourceIdentifier& resource,
197 ContentSetting setting) { 197 ContentSetting setting) {
198 std::unique_ptr<ContentSettingsPattern::BuilderInterface> pattern_builder( 198 auto pattern_builder = ContentSettingsPattern::CreateBuilder();
199 ContentSettingsPattern::CreateBuilder(false));
200 pattern_builder->WithScheme(extensions::kExtensionScheme); 199 pattern_builder->WithScheme(extensions::kExtensionScheme);
201 pattern_builder->WithHost(extension->id()); 200 pattern_builder->WithHost(extension->id());
202 pattern_builder->WithPathWildcard(); 201 pattern_builder->WithPathWildcard();
203 202
204 ContentSettingsPattern primary_pattern = pattern_builder->Build(); 203 ContentSettingsPattern primary_pattern = pattern_builder->Build();
205 ContentSettingsPattern secondary_pattern = ContentSettingsPattern::Wildcard(); 204 ContentSettingsPattern secondary_pattern = ContentSettingsPattern::Wildcard();
206 { 205 {
207 base::AutoLock lock(lock_); 206 base::AutoLock lock(lock_);
208 if (setting == CONTENT_SETTING_DEFAULT) { 207 if (setting == CONTENT_SETTING_DEFAULT) {
209 value_map_.DeleteValue(primary_pattern, 208 value_map_.DeleteValue(primary_pattern,
(...skipping 10 matching lines...) Expand all
220 new base::Value(setting)); 219 new base::Value(setting));
221 } 220 }
222 } 221 }
223 NotifyObservers(primary_pattern, 222 NotifyObservers(primary_pattern,
224 secondary_pattern, 223 secondary_pattern,
225 CONTENT_SETTINGS_TYPE_PLUGINS, 224 CONTENT_SETTINGS_TYPE_PLUGINS,
226 resource); 225 resource);
227 } 226 }
228 227
229 } // namespace content_settings 228 } // namespace content_settings
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698