| Index: chrome/browser/extensions/extension_pref_store.h
 | 
| diff --git a/chrome/browser/extensions/extension_pref_store.h b/chrome/browser/extensions/extension_pref_store.h
 | 
| index 67c7335c05af5922c705254dd628bee72e0011e5..5928445f8fda43fe4ff592d8a4f0b26243f6d87b 100644
 | 
| --- a/chrome/browser/extensions/extension_pref_store.h
 | 
| +++ b/chrome/browser/extensions/extension_pref_store.h
 | 
| @@ -30,15 +30,6 @@ class Value;
 | 
|  // proxy settings. A stack of relevant extensions is stored in order of
 | 
|  // their addition to this PrefStore. For each preference, the last-added
 | 
|  // enabled extension that tries to set it overrules any others.
 | 
| -//
 | 
| -// TODO(battre): The ExtensionPrefStore has an issue if it serves for storing
 | 
| -// extension preferences in the local-state (shared among all profiles on a
 | 
| -// machine). In this context, there is no meaningful definition of a precedence
 | 
| -// order as the same extensions can be installed in different profiles.
 | 
| -// One instance would override the preferences of another instance. Also it is
 | 
| -// unclear how settings should be removed in this case. For this reason we
 | 
| -// (pamg, battre) decided to not support the ExtensionPrefStore for local-state.
 | 
| -// This needs to be enforced by the code.
 | 
|  class ExtensionPrefStore : public PrefStore,
 | 
|                             public NotificationObserver {
 | 
|   public:
 | 
| @@ -52,6 +43,11 @@ class ExtensionPrefStore : public PrefStore,
 | 
|    typedef std::pair<const Extension*, std::pair<const char*, Value*> >
 | 
|        ExtensionPrefDetails;
 | 
|  
 | 
| +  // The local-state ExtensionPrefStore (shared among all profiles on a
 | 
| +  // machine), indicated by a NULL |profile|, is prohibited from storing
 | 
| +  // preferences. Since extensions are installed per profile, allowing them to
 | 
| +  // control machine-wide settings could lead to unsolvable conflicts, and
 | 
| +  // should not be necessary anyway.
 | 
|    ExtensionPrefStore(Profile* profile, PrefNotifier::PrefStoreType type);
 | 
|    virtual ~ExtensionPrefStore();
 | 
|  
 | 
| @@ -76,9 +72,7 @@ class ExtensionPrefStore : public PrefStore,
 | 
|    // This should only be accessed by subclasses for unit-testing.
 | 
|    void GetExtensionIDs(std::vector<std::string>* result);
 | 
|  
 | 
| -  // Returns the applicable pref service from the profile (if we have one) or
 | 
| -  // the browser's local state. This should only be accessed or overridden by
 | 
| -  // subclasses for unit-testing.
 | 
| +  // For PrefService injection for unit-testing
 | 
|    virtual PrefService* GetPrefService();
 | 
|  
 | 
|    // The following functions delegate to
 | 
| 
 |