diff --git a/libnymea/integrations/thing.cpp b/libnymea/integrations/thing.cpp index 17bee3fe..4e13c075 100644 --- a/libnymea/integrations/thing.cpp +++ b/libnymea/integrations/thing.cpp @@ -157,6 +157,12 @@ Thing::Thing(const PluginId &pluginId, const ThingClass &thingClass, QObject *pa } +Thing::~Thing() +{ + qDeleteAll(m_stateValueFilters); + m_stateValueFilters.clear(); +} + /*! Returns the id of this thing. */ ThingId Thing::id() const { diff --git a/libnymea/integrations/thing.h b/libnymea/integrations/thing.h index efe941c7..6dd02a97 100644 --- a/libnymea/integrations/thing.h +++ b/libnymea/integrations/thing.h @@ -103,6 +103,8 @@ public: }; Q_ENUM(ThingSetupStatus) + ~Thing() override; + ThingId id() const; ThingClassId thingClassId() const; PluginId pluginId() const; diff --git a/nymea.pri b/nymea.pri index 692dadf1..fb7aa57c 100644 --- a/nymea.pri +++ b/nymea.pri @@ -71,4 +71,8 @@ coverage { QMAKE_CLEAN += *.gcda *.gcno coverage.info coverage.xml } +asan: { + QMAKE_CXXFLAGS *= -fsanitize=address + QMAKE_LFLAGS *= -fsanitize=address +}