summaryrefslogtreecommitdiff
path: root/libs/ardour/interpolation.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/interpolation.cc')
-rw-r--r--libs/ardour/interpolation.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/libs/ardour/interpolation.cc b/libs/ardour/interpolation.cc
index d7f1c835df..311f962471 100644
--- a/libs/ardour/interpolation.cc
+++ b/libs/ardour/interpolation.cc
@@ -195,9 +195,12 @@ LibSamplerateInterpolation::add_channel_to (int input_buffer_size, int output_bu
void
LibSamplerateInterpolation::remove_channel_from ()
{
- delete data.back ();
+ SRC_DATA* d = data.back ();
+ delete d;
data.pop_back ();
- delete state.back ();
+ if (state.back ()) {
+ src_delete (state.back ());
+ }
state.pop_back ();
reset_state ();
}