diff options
Diffstat (limited to 'chrome/browser/command_updater.cc')
-rw-r--r-- | chrome/browser/command_updater.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/chrome/browser/command_updater.cc b/chrome/browser/command_updater.cc index 8839965..db34bbd 100644 --- a/chrome/browser/command_updater.cc +++ b/chrome/browser/command_updater.cc @@ -59,3 +59,13 @@ void CommandUpdater::AddCommandObserver(int id, CommandObserver* observer) { void CommandUpdater::RemoveCommandObserver(int id, CommandObserver* observer) { GetCommand(id, false)->observers.RemoveObserver(observer); } + +void CommandUpdater::RemoveCommandObserver(CommandObserver* observer) { + for (CommandMap::const_iterator it = commands_.begin(); + it != commands_.end(); + ++it) { + Command* command = it->second; + if (command) + command->observers.RemoveObserver(observer); + } +} |