From 179fd257151b0ecd814b2fc8d9acbede385332fd Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 14 Mar 2025 15:56:21 -0600 Subject: [PATCH] some fixes for sigc::connection mgmt and lifetime mgmt for EditingContext --- gtk2_ardour/cue_editor.h | 2 +- gtk2_ardour/editing_context.h | 2 +- gtk2_ardour/pianoroll.cc | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/gtk2_ardour/cue_editor.h b/gtk2_ardour/cue_editor.h index 51e980cafb..ee275f8521 100644 --- a/gtk2_ardour/cue_editor.h +++ b/gtk2_ardour/cue_editor.h @@ -23,7 +23,7 @@ #include "editing.h" #include "editing_context.h" -class CueEditor : public EditingContext, public PBD::HistoryOwner, public sigc::trackable +class CueEditor : public EditingContext, public PBD::HistoryOwner { public: CueEditor (std::string const & name); diff --git a/gtk2_ardour/editing_context.h b/gtk2_ardour/editing_context.h index b2e8cbf103..a071de1944 100644 --- a/gtk2_ardour/editing_context.h +++ b/gtk2_ardour/editing_context.h @@ -75,7 +75,7 @@ class Selection; class SelectionMemento; class SelectableOwner; -class EditingContext : public ARDOUR::SessionHandlePtr, public AxisViewProvider +class EditingContext : public ARDOUR::SessionHandlePtr, public AxisViewProvider, public virtual sigc::trackable { public: EditingContext (std::string const &); diff --git a/gtk2_ardour/pianoroll.cc b/gtk2_ardour/pianoroll.cc index 707a86d271..1ee4741fd8 100644 --- a/gtk2_ardour/pianoroll.cc +++ b/gtk2_ardour/pianoroll.cc @@ -100,6 +100,7 @@ Pianoroll::~Pianoroll () drop_grid (); // unparent gridlines before deleting _canvas_viewport delete view; + delete bg; delete _canvas_viewport; }