mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-08 07:45:00 +01:00
do not allow smf_source's reads to stomp on cached read_end position in parent class, which creates chaos by being out of sync with MidiSource::_model_iterator. this doesn't totally fix MIDI playback, but it helps
git-svn-id: svn://localhost/ardour2/branches/3.0@5665 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
127b8a62b7
commit
fa4e858eb3
12 changed files with 121 additions and 39 deletions
|
|
@ -33,7 +33,7 @@
|
|||
#include "evoral/TypeMap.hpp"
|
||||
#include "evoral/midi_util.h"
|
||||
|
||||
//#define DEBUG_SEQUENCE 1
|
||||
// #define DEBUG_SEQUENCE 1
|
||||
#ifdef DEBUG_SEQUENCE
|
||||
#include <boost/format.hpp>
|
||||
using boost::format;
|
||||
|
|
@ -209,10 +209,10 @@ Sequence<Time>::const_iterator::const_iterator(const Sequence<Time>& seq, Time t
|
|||
_locked = false;
|
||||
_seq->read_unlock();
|
||||
} else {
|
||||
DUMP(format("New iterator = %1% : %2% @ %3%\n")
|
||||
% (int)_event->event_type()
|
||||
% (int)((MIDIEvent<Time>*)_event.get())->type()
|
||||
% _event->time());
|
||||
DUMP(printf("New iterator = 0x%x : 0x%x @ %f\n",
|
||||
(int)_event->event_type(),
|
||||
(int)((MIDIEvent<Time>*)_event.get())->type(),
|
||||
_event->time()));
|
||||
assert(midi_event_is_valid(_event->buffer(), _event->size()));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue