From 8dfc25432f0c295a80b419206f48da043054dcd3 Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Sat, 22 Oct 2011 18:19:13 +0200 Subject: cppcheck: variable initialisation / fix possible memory leak (bzr r10688) --- src/preferences.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index 444acfcac..f026e92cd 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -521,6 +521,7 @@ struct _ObserverData { Preferences::Observer::Observer(Glib::ustring const &path) : observed_path(path) { + _data = NULL; } Preferences::Observer::~Observer() @@ -600,6 +601,10 @@ void Preferences::addObserver(Observer &o) _ObserverData *priv_data = new _ObserverData; priv_data->_node = node; priv_data->_is_attr = !attr_key.empty(); + if (o._data) + { + delete o._data; + } o._data = static_cast(priv_data); _observer_map[&o] = new PrefNodeObserver(o, attr_key); -- cgit v1.2.3