| Index: components/policy/core/common/policy_map.h
 | 
| diff --git a/components/policy/core/common/policy_map.h b/components/policy/core/common/policy_map.h
 | 
| index 9960531f64e1dea99dbb3baaaf922c44de7632e1..5b527adb867f7dace8ff37e9a3e30a7371bbd88f 100644
 | 
| --- a/components/policy/core/common/policy_map.h
 | 
| +++ b/components/policy/core/common/policy_map.h
 | 
| @@ -28,19 +28,20 @@ class POLICY_EXPORT PolicyMap {
 | 
|    struct POLICY_EXPORT Entry {
 | 
|      PolicyLevel level;
 | 
|      PolicyScope scope;
 | 
| -    base::Value* value;
 | 
| -    ExternalDataFetcher* external_data_fetcher;
 | 
| +    std::unique_ptr<base::Value> value;
 | 
| +    std::unique_ptr<ExternalDataFetcher> external_data_fetcher;
 | 
|  
 | 
|      // For debugging and displaying only. Set by provider delivering the policy.
 | 
|      PolicySource source;
 | 
|  
 | 
|      Entry();
 | 
| +    ~Entry();
 | 
|  
 | 
| -    // Deletes all members owned by |this|.
 | 
| -    void DeleteOwnedMembers();
 | 
| +    Entry(Entry&&);
 | 
| +    Entry& operator=(Entry&&);
 | 
|  
 | 
|      // Returns a copy of |this|.
 | 
| -    std::unique_ptr<Entry> DeepCopy() const;
 | 
| +    Entry DeepCopy() const;
 | 
|  
 | 
|      // Returns true if |this| has higher priority than |other|.
 | 
|      bool has_higher_priority_than(const Entry& other) const;
 | 
| @@ -64,14 +65,14 @@ class POLICY_EXPORT PolicyMap {
 | 
|    // This is equivalent to Get(policy)->value, when it doesn't return NULL.
 | 
|    const base::Value* GetValue(const std::string& policy) const;
 | 
|  
 | 
| -  // Takes ownership of |value| and |external_data_fetcher|. Overwrites any
 | 
| -  // existing information stored in the map for the key |policy|.
 | 
| +  // Overwrites any existing information stored in the map for the key |policy|.
 | 
|    void Set(const std::string& policy,
 | 
|             PolicyLevel level,
 | 
|             PolicyScope scope,
 | 
|             PolicySource source,
 | 
| -           base::Value* value,
 | 
| -           ExternalDataFetcher* external_data_fetcher);
 | 
| +           std::unique_ptr<base::Value> value,
 | 
| +           std::unique_ptr<ExternalDataFetcher> external_data_fetcher);
 | 
| +  void Set(const std::string& policy, Entry entry);
 | 
|  
 | 
|    // Erase the given |policy|, if it exists in this map.
 | 
|    void Erase(const std::string& policy);
 | 
| 
 |