| Index: chrome/common/pref_store.h
|
| diff --git a/chrome/common/pref_store.h b/chrome/common/pref_store.h
|
| index 745eff7157afca49114a3876118dd4205f7ba91c..9b7f433a1328eca2c7542c7748ce83f3315ed9fc 100644
|
| --- a/chrome/common/pref_store.h
|
| +++ b/chrome/common/pref_store.h
|
| @@ -9,6 +9,7 @@
|
| #include <string>
|
|
|
| #include "base/basictypes.h"
|
| +#include "base/ref_counted.h"
|
|
|
| class Value;
|
|
|
| @@ -19,7 +20,7 @@ class Value;
|
| // CommandLinePrefStore, which bridges command line options to preferences and
|
| // ConfigurationPolicyPrefStore, which is used for hooking up configuration
|
| // policy with the preference subsystem.
|
| -class PrefStore {
|
| +class PrefStore : public base::RefCounted<PrefStore> {
|
| public:
|
| // Observer interface for monitoring PrefStore.
|
| class Observer {
|
| @@ -43,7 +44,6 @@ class PrefStore {
|
| };
|
|
|
| PrefStore() {}
|
| - virtual ~PrefStore() {}
|
|
|
| // Add and remove observers.
|
| virtual void AddObserver(Observer* observer) {}
|
| @@ -57,6 +57,12 @@ class PrefStore {
|
| // |result| value remains with the PrefStore.
|
| virtual ReadResult GetValue(const std::string& key, Value** result) const = 0;
|
|
|
| + protected:
|
| + friend class base::RefCounted<PrefStore>;
|
| +
|
| + virtual ~PrefStore() {}
|
| +
|
| + private:
|
| DISALLOW_COPY_AND_ASSIGN(PrefStore);
|
| };
|
|
|
|
|