[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [threadweaver] src: Fix memory leak
From: Albert Astals Cid <null () kde ! org>
Date: 2017-09-30 18:11:20
Message-ID: E1dyMES-0003we-9H () code ! kde ! org
[Download RAW message or body]
Git commit 21189d20fb7b1327deff821af4183da7e33aec2a by Albert Astals Cid.
Committed on 30/09/2017 at 18:11.
Pushed by aacid into branch 'master'.
Fix memory leak
Summary:
QueueSignals_Private needs a virtual destructor so that when
QueueSignals::~QueueSignals does
delete m_d;
it ends up callign the destructor of Weaver_Private
Test Plan: autotests/ThreadWeaverQueueTests did leak, doesn't anymore
Reviewers: mirko, davidedmundson
Reviewed By: davidedmundson
Subscribers: #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D7771
M +1 -6 src/queuesignals.cpp
M +4 -0 src/queuesignals_p.cpp
M +1 -0 src/queuesignals_p.h
M +1 -1 src/weaver_p.h
https://commits.kde.org/threadweaver/21189d20fb7b1327deff821af4183da7e33aec2a
diff --git a/src/queuesignals.cpp b/src/queuesignals.cpp
index 082860f..cf74eb0 100644
--- a/src/queuesignals.cpp
+++ b/src/queuesignals.cpp
@@ -26,16 +26,11 @@
*/
#include "queuesignals.h"
+#include "queuesignals_p.h"
namespace ThreadWeaver
{
-namespace Private {
-
-class QueueSignals_Private {};
-
-}
-
/** @brief Construct a QueueSignals object, passing the QObject parent. */
QueueSignals::QueueSignals(QObject *parent)
: QObject(parent)
diff --git a/src/queuesignals_p.cpp b/src/queuesignals_p.cpp
index cfbb571..97c8bce 100644
--- a/src/queuesignals_p.cpp
+++ b/src/queuesignals_p.cpp
@@ -30,3 +30,7 @@ http://creative-destruction.me $
ThreadWeaver::Private::QueueSignals_Private::QueueSignals_Private()
{
}
+
+ThreadWeaver::Private::QueueSignals_Private::~QueueSignals_Private()
+{
+}
diff --git a/src/queuesignals_p.h b/src/queuesignals_p.h
index 5831db9..dc61ff6 100644
--- a/src/queuesignals_p.h
+++ b/src/queuesignals_p.h
@@ -36,6 +36,7 @@ class QueueSignals_Private
{
public:
QueueSignals_Private();
+ virtual ~QueueSignals_Private();
};
}
diff --git a/src/weaver_p.h b/src/weaver_p.h
index 0ed5c80..bf763a1 100644
--- a/src/weaver_p.h
+++ b/src/weaver_p.h
@@ -46,7 +46,7 @@ class Weaver_Private : public QueueSignals_Private
{
public:
Weaver_Private();
- ~Weaver_Private();
+ ~Weaver_Private() override;
void dumpJobs();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic