diff options
author | tapted@chromium.org <tapted@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-21 01:57:42 +0000 |
---|---|---|
committer | tapted@chromium.org <tapted@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-21 01:57:42 +0000 |
commit | 49e7741e899cf01441e867e05c8abfa0c92b4608 (patch) | |
tree | ab67723cfbbabb70dc8314b6e14f67d1f14cfa15 /extensions/browser/process_manager.h | |
parent | 6e4ce64dbe36a37603223d91c56d6541dc2ab244 (diff) | |
download | chromium_src-49e7741e899cf01441e867e05c8abfa0c92b4608.zip chromium_src-49e7741e899cf01441e867e05c8abfa0c92b4608.tar.gz chromium_src-49e7741e899cf01441e867e05c8abfa0c92b4608.tar.bz2 |
Revert of Remove deprecated extension notifications from ProcessManager (https://codereview.chromium.org/397743005/)
Reason for revert:
Suspected for Invalid Write / Unadressable / Uninitialized errors in
Linux Tests (valgrind)(3) via ProcessManagerTest.ProcessGrouping and others starting
http://build.chromium.org/p/chromium.memory.fyi/builders/Linux%20Tests%20%28valgrind%29%283%29/builds/38965
Errors like
Invalid write of size 8
ObserverListBase<autofill::PersonalDataManagerObserver>::AddObserver(autofill::PersonalDataManagerObserver*) (base/observer_list.h:162)
autofill::PersonalDataManager::AddObserver(autofill::PersonalDataManagerObserver*) (components/autofill/core/browser/personal_data_manager.cc:225)
...
extensions::ProcessManagerTest::ProcessManagerTest() (extensions/browser/process_manager_unittest.cc:39)
and a range of uninitialized reads/jumps.
Original issue's description:
> Remove deprecated extension notifications from ProcessManager and use ExtensionRegistry instead.
>
> BUG=354046
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=284366
TBR=rdevlin.cronin@chromium.org,limasdf@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=354046
Review URL: https://codereview.chromium.org/407883003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284387 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'extensions/browser/process_manager.h')
-rw-r--r-- | extensions/browser/process_manager.h | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/extensions/browser/process_manager.h b/extensions/browser/process_manager.h index c45d13a..e580bbd 100644 --- a/extensions/browser/process_manager.h +++ b/extensions/browser/process_manager.h @@ -14,11 +14,9 @@ #include "base/memory/ref_counted.h" #include "base/memory/weak_ptr.h" #include "base/observer_list.h" -#include "base/scoped_observer.h" #include "base/time/time.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" -#include "extensions/browser/extension_registry_observer.h" #include "extensions/common/view_type.h" class GURL; @@ -35,14 +33,12 @@ namespace extensions { class Extension; class ExtensionHost; -class ExtensionRegistry; class ProcessManagerObserver; // Manages dynamic state of running Chromium extensions. There is one instance // of this class per Profile. OTR Profiles have a separate instance that keeps // track of split-mode extensions only. -class ProcessManager : public content::NotificationObserver, - public ExtensionRegistryObserver { +class ProcessManager : public content::NotificationObserver { public: typedef std::set<extensions::ExtensionHost*> ExtensionHostSet; typedef ExtensionHostSet::const_iterator const_iterator; @@ -162,14 +158,6 @@ class ProcessManager : public content::NotificationObserver, const content::NotificationSource& source, const content::NotificationDetails& details) OVERRIDE; - // ExtensionRegistryObserver: - virtual void OnExtensionLoaded(content::BrowserContext* browser_context, - const Extension* extension) OVERRIDE; - virtual void OnExtensionUnloaded( - content::BrowserContext* browser_context, - const Extension* extension, - UnloadedExtensionInfo::Reason reason) OVERRIDE; - // Load all background pages once the profile data is ready and the pages // should be loaded. void CreateBackgroundHostsForProfileStartup(); @@ -276,9 +264,6 @@ class ProcessManager : public content::NotificationObserver, // Must be last member, see doc on WeakPtrFactory. base::WeakPtrFactory<ProcessManager> weak_ptr_factory_; - ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> - extension_registry_observer_; - DISALLOW_COPY_AND_ASSIGN(ProcessManager); }; |