From 02d484de8a4733907b40743557459a8cc42565b7 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 20 Jan 2017 11:32:55 +0100 Subject: [PATCH] Plug some libardour memory leaks --- libs/ardour/io.cc | 3 +++ libs/ardour/worker.cc | 3 +++ 2 files changed, 6 insertions(+) diff --git a/libs/ardour/io.cc b/libs/ardour/io.cc index b5a81c71e8..8528a9cd37 100644 --- a/libs/ardour/io.cc +++ b/libs/ardour/io.cc @@ -96,6 +96,7 @@ IO::~IO () for (PortSet::iterator i = _ports.begin(); i != _ports.end(); ++i) { _session.engine().unregister_port (*i); } + delete pending_state_node; pending_state_node = 0; } void @@ -662,6 +663,7 @@ IO::set_state (const XMLNode& node, int version) } else { + delete pending_state_node; pending_state_node = new XMLNode (node); pending_state_node_version = version; pending_state_node_in = false; @@ -716,6 +718,7 @@ IO::set_state_2X (const XMLNode& node, int version, bool in) } else { + delete pending_state_node; pending_state_node = new XMLNode (node); pending_state_node_version = version; pending_state_node_in = in; diff --git a/libs/ardour/worker.cc b/libs/ardour/worker.cc index f8a5e44aee..0a5971fa3e 100644 --- a/libs/ardour/worker.cc +++ b/libs/ardour/worker.cc @@ -50,6 +50,9 @@ Worker::~Worker() if (_thread) { _thread->join(); } + delete _responses; + delete _requests; + free (_response); } bool