From dc039754098f5931c2e58a335057be1d80b7c15b Mon Sep 17 00:00:00 2001
From: Ulf Hermann <ulf.hermann@theqtcompany.com>
Date: Tue, 16 Dec 2014 15:32:15 +0100
Subject: [PATCH] Timeline: Don't leak render pass states.

Change-Id: Ib19cd8cc76324e583ed79d8a660bb06a7b154a66
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
---
 src/libs/timeline/timelinerenderpass.cpp  | 4 ++++
 src/libs/timeline/timelinerenderpass.h    | 1 +
 src/libs/timeline/timelinerenderstate.cpp | 1 +
 3 files changed, 6 insertions(+)

diff --git a/src/libs/timeline/timelinerenderpass.cpp b/src/libs/timeline/timelinerenderpass.cpp
index 94bbb79acb7..a6a9251ba57 100644
--- a/src/libs/timeline/timelinerenderpass.cpp
+++ b/src/libs/timeline/timelinerenderpass.cpp
@@ -54,6 +54,10 @@ QSGNode *TimelineRenderPass::State::collapsedOverlay() const
     return 0;
 }
 
+TimelineRenderPass::State::~State()
+{
+}
+
 TimelineRenderPass::~TimelineRenderPass() {}
 
 } // namespace Timeline
diff --git a/src/libs/timeline/timelinerenderpass.h b/src/libs/timeline/timelinerenderpass.h
index cb0d428db07..6efb67ec7b5 100644
--- a/src/libs/timeline/timelinerenderpass.h
+++ b/src/libs/timeline/timelinerenderpass.h
@@ -48,6 +48,7 @@ public:
         virtual const QVector<QSGNode *> &collapsedRows() const;
         virtual QSGNode *expandedOverlay() const;
         virtual QSGNode *collapsedOverlay() const;
+        virtual ~State();
     };
 
     virtual ~TimelineRenderPass();
diff --git a/src/libs/timeline/timelinerenderstate.cpp b/src/libs/timeline/timelinerenderstate.cpp
index e014f910487..75238660729 100644
--- a/src/libs/timeline/timelinerenderstate.cpp
+++ b/src/libs/timeline/timelinerenderstate.cpp
@@ -58,6 +58,7 @@ TimelineRenderState::~TimelineRenderState()
     delete d->collapsedRowRoot;
     delete d->expandedOverlayRoot;
     delete d->collapsedOverlayRoot;
+    qDeleteAll(d->passes);
     delete d;
 }
 
-- 
GitLab