Index: chrome/browser/extensions/api/developer_private/developer_private_api.cc |
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_api.cc b/chrome/browser/extensions/api/developer_private/developer_private_api.cc |
index 0c1ab7e9ee94f8f7bfe5c6aaf6ccc148921f36d0..03b8ee5e3140a91a2e1518dcf09fa46b6a364b2e 100644 |
--- a/chrome/browser/extensions/api/developer_private/developer_private_api.cc |
+++ b/chrome/browser/extensions/api/developer_private/developer_private_api.cc |
@@ -246,13 +246,21 @@ void DeveloperPrivateEventRouter::OnErrorAdded(const ExtensionError* error) { |
// We don't want to handle errors thrown by extensions subscribed to these |
// events (currently only the Apps Developer Tool), because doing so risks |
// entering a loop. |
- if (extension_ids_.find(error->extension_id()) != extension_ids_.end()) |
+ if (extension_ids_.count(error->extension_id())) |
return; |
BroadcastItemStateChanged(developer::EVENT_TYPE_ERROR_ADDED, |
error->extension_id()); |
} |
+void DeveloperPrivateEventRouter::OnErrorsRemoved( |
+ const std::set<std::string>& removed_ids) { |
+ for (const std::string& id : removed_ids) { |
+ if (!extension_ids_.count(id)) |
+ BroadcastItemStateChanged(developer::EVENT_TYPE_ERRORS_REMOVED, id); |
+ } |
+} |
+ |
void DeveloperPrivateEventRouter::OnExtensionFrameRegistered( |
const std::string& extension_id, |
content::RenderFrameHost* render_frame_host) { |