diff options
author | Robin Gareus <robin@gareus.org> | 2018-11-29 02:05:26 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2018-11-29 02:05:26 +0100 |
commit | 6fc2804414739d079e6c8798906887ecea152956 (patch) | |
tree | 83644feacd7b7690c1d3be2da0be0779cb729512 /libs/ardour/disk_io.cc | |
parent | dfbda9e0f6d5003ba2ba05b21c6045f4ad1109fa (diff) |
Disk I/O: only allocate midi-buffer if needed
This fixes a memory-leak (_midi_buf was allocated in DiskIOProc
but only delete in DiskReader). Also skip midi-refill early on
Diffstat (limited to 'libs/ardour/disk_io.cc')
-rw-r--r-- | libs/ardour/disk_io.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/ardour/disk_io.cc b/libs/ardour/disk_io.cc index 427f364404..097794bb3d 100644 --- a/libs/ardour/disk_io.cc +++ b/libs/ardour/disk_io.cc @@ -55,7 +55,7 @@ DiskIOProcessor::DiskIOProcessor (Session& s, string const & str, Flag f) , playback_sample (0) , _need_butler (false) , channels (new ChannelList) - , _midi_buf (new MidiRingBuffer<samplepos_t> (s.butler()->midi_diskstream_buffer_size())) + , _midi_buf (0) , _samples_written_to_ringbuffer (0) , _samples_read_from_ringbuffer (0) { @@ -76,6 +76,7 @@ DiskIOProcessor::~DiskIOProcessor () } channels.flush (); + delete _midi_buf; } |