summaryrefslogtreecommitdiff
path: root/libs/ardour
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour')
-rw-r--r--libs/ardour/ardour/delayline.h7
-rw-r--r--libs/ardour/delayline.cc1
2 files changed, 6 insertions, 2 deletions
diff --git a/libs/ardour/ardour/delayline.h b/libs/ardour/ardour/delayline.h
index 9dfe5628d3..2e970ecd9f 100644
--- a/libs/ardour/ardour/delayline.h
+++ b/libs/ardour/ardour/delayline.h
@@ -20,6 +20,9 @@
#ifndef __ardour_delayline_h__
#define __ardour_delayline_h__
+#include <boost/shared_ptr.hpp>
+#include <boost/shared_array.hpp>
+
#include "ardour/types.h"
#include "ardour/processor.h"
@@ -58,8 +61,8 @@ private:
framecnt_t _delay, _pending_delay;
framecnt_t _bsiz, _pending_bsiz;
frameoffset_t _roff, _woff;
- boost::shared_ptr<Sample[]> _buf;
- boost::shared_ptr<Sample[]> _pending_buf;
+ boost::shared_array<Sample> _buf;
+ boost::shared_array<Sample> _pending_buf;
boost::shared_ptr<MidiBuffer> _midi_buf;
bool _pending_flush;
};
diff --git a/libs/ardour/delayline.cc b/libs/ardour/delayline.cc
index 0bd7793366..26b6ce619e 100644
--- a/libs/ardour/delayline.cc
+++ b/libs/ardour/delayline.cc
@@ -112,6 +112,7 @@ DelayLine::run (BufferSet& bufs, framepos_t /* start_frame */, framepos_t /* end
_roff += boff;
}
+ // use shared_array::swap() ??
_buf = _pending_buf;
_bsiz = _pending_bsiz;
_pending_bsiz = 0;