From 1ed09dc049bf192c0b06f4fe64641977a180ba6b Mon Sep 17 00:00:00 2001 From: Adam Reichold Date: Sat, 28 Nov 2015 14:13:46 +0100 Subject: [PATCH] Fix leaking the axis adjusters in the coordinate adjuster. --- rtgui/coordinateadjuster.cc | 6 ++++++ rtgui/coordinateadjuster.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/rtgui/coordinateadjuster.cc b/rtgui/coordinateadjuster.cc index 354e01577..61b5ae8b8 100644 --- a/rtgui/coordinateadjuster.cc +++ b/rtgui/coordinateadjuster.cc @@ -103,6 +103,12 @@ CoordinateAdjuster::CoordinateAdjuster(CoordinateProvider *provider, CurveEditor createWidgets(defaultAxis); } +CoordinateAdjuster::~CoordinateAdjuster() +{ + for (std::vector::iterator iterator = axisAdjusters.begin(); iterator != axisAdjusters.end(); ++iterator) + delete *iterator; +} + void CoordinateAdjuster::createWidgets(const std::vector &axis) { unsigned int count = axis.size(); diff --git a/rtgui/coordinateadjuster.h b/rtgui/coordinateadjuster.h index cb1eb91ed..8f00f8ae7 100644 --- a/rtgui/coordinateadjuster.h +++ b/rtgui/coordinateadjuster.h @@ -136,7 +136,7 @@ public: /// For more complex adjuster CoordinateAdjuster(CoordinateProvider *provider, CurveEditorSubGroup *parent, const std::vector &axis); - virtual ~CoordinateAdjuster() {} + virtual ~CoordinateAdjuster(); // Update the Axis list, e.g. on Curve change, but MUST have the same axis count void setAxis(const std::vector &axis);