diff --git a/libs/ardour/globals.cc b/libs/ardour/globals.cc index 39bcd1b79e..054ffffe51 100644 --- a/libs/ardour/globals.cc +++ b/libs/ardour/globals.cc @@ -390,6 +390,8 @@ ARDOUR::cleanup () #ifdef LXVST_SUPPORT vstfx_exit(); #endif + delete &PluginManager::instance(); + delete Config; PBD::cleanup (); return; diff --git a/libs/ardour/midi_diskstream.cc b/libs/ardour/midi_diskstream.cc index 7c75c8d2e6..1cc69263f0 100644 --- a/libs/ardour/midi_diskstream.cc +++ b/libs/ardour/midi_diskstream.cc @@ -138,6 +138,8 @@ MidiDiskstream::init () MidiDiskstream::~MidiDiskstream () { Glib::Threads::Mutex::Lock lm (state_lock); + delete _playback_buf; + delete _capture_buf; } diff --git a/libs/ardour/panner_manager.cc b/libs/ardour/panner_manager.cc index 0cc95c8e7a..95136c2951 100644 --- a/libs/ardour/panner_manager.cc +++ b/libs/ardour/panner_manager.cc @@ -124,6 +124,8 @@ PannerManager::panner_discover (string path) if (i == panner_info.end()) { panner_info.push_back (pinfo); DEBUG_TRACE (DEBUG::Panning, string_compose(_("Panner discovered: \"%1\" in %2\n"), pinfo->descriptor.name, path)); + } else { + delete pinfo; } } diff --git a/libs/gtkmm2ext/gtk_ui.cc b/libs/gtkmm2ext/gtk_ui.cc index 294c004a06..6a490e1bb0 100644 --- a/libs/gtkmm2ext/gtk_ui.cc +++ b/libs/gtkmm2ext/gtk_ui.cc @@ -70,6 +70,7 @@ template class AbstractUI; UI::UI (string namestr, int *argc, char ***argv) : AbstractUI (namestr) , _receiver (*this) + , errors (0) { theMain = new Main (argc, argv); @@ -124,6 +125,7 @@ UI::UI (string namestr, int *argc, char ***argv) UI::~UI () { _receiver.hangup (); + delete (errors); } bool diff --git a/libs/pbd/pbd/abstract_ui.cc b/libs/pbd/pbd/abstract_ui.cc index 8841301afe..cf5292b9e6 100644 --- a/libs/pbd/pbd/abstract_ui.cc +++ b/libs/pbd/pbd/abstract_ui.cc @@ -211,6 +211,7 @@ AbstractUI::handle_ui_requests () if (vec.buf[0]->invalidation) { vec.buf[0]->invalidation->requests.remove (vec.buf[0]); } + delete vec.buf[0]; i->second->increment_read_ptr (1); } } @@ -326,6 +327,7 @@ AbstractUI::send_request (RequestObject *req) */ DEBUG_TRACE (PBD::DEBUG::AbstractUI, string_compose ("%1/%2 direct dispatch of request type %3\n", name(), pthread_name(), req->type)); do_request (req); + delete req; } else { /* If called from a different thread, we first check to see if