diff options
author | avakulenko <avakulenko@chromium.org> | 2015-04-02 11:51:32 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-02 18:52:03 +0000 |
commit | 9a99965adab379a5965484a59334a80bc576e49e (patch) | |
tree | 1433eb040a5355a716e4cd497dd708d2aefe7495 /dbus | |
parent | e09b357b3714bfa94bbae86da288b7f4390a5192 (diff) | |
download | chromium_src-9a99965adab379a5965484a59334a80bc576e49e.zip chromium_src-9a99965adab379a5965484a59334a80bc576e49e.tar.gz chromium_src-9a99965adab379a5965484a59334a80bc576e49e.tar.bz2 |
Fix memory leak in dbus::ObjectManager::RemoveInterface
D-Bus Object Manager proxy class was leaking PropertySet object instances
stored in properties_map when an interface was removed.
Make sure we delete the PropertySet before we remove the map entry.
BUG=472654
Review URL: https://codereview.chromium.org/1055713002
Cr-Commit-Position: refs/heads/master@{#323544}
Diffstat (limited to 'dbus')
-rw-r--r-- | dbus/object_manager.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/dbus/object_manager.cc b/dbus/object_manager.cc index 181a73b..851fee4 100644 --- a/dbus/object_manager.cc +++ b/dbus/object_manager.cc @@ -482,6 +482,7 @@ void ObjectManager::RemoveInterface(const ObjectPath& object_path, interface->ObjectRemoved(object_path, interface_name); } + delete piter->second; object->properties_map.erase(piter); if (object->properties_map.empty()) { |