aboutsummaryrefslogtreecommitdiff
path: root/src/midi_sequencer_impl.hpp
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-11-01 02:44:39 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-11-01 02:44:39 +0300
commit699b534eb1dcd3964daf99cc572c6819bdd449a8 (patch)
tree8ba86d405e473e75178fa25f236368a4754a9f1f /src/midi_sequencer_impl.hpp
parent62dba3fcf3b27d2eefd25abc7a646ad89b569a2a (diff)
downloadlibADLMIDI-699b534eb1dcd3964daf99cc572c6819bdd449a8.tar.gz
libADLMIDI-699b534eb1dcd3964daf99cc572c6819bdd449a8.tar.bz2
libADLMIDI-699b534eb1dcd3964daf99cc572c6819bdd449a8.zip
MIDI Sequencer: Fixed missing per-track titles
Old code have allowed track titles be passed for only case debug message hook was set. Unfortunately, it's a mistake. Track titles collection must NOT depend on a debug message hook existing.
Diffstat (limited to 'src/midi_sequencer_impl.hpp')
-rw-r--r--src/midi_sequencer_impl.hpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/midi_sequencer_impl.hpp b/src/midi_sequencer_impl.hpp
index 3a4df4e..f5e1b15 100644
--- a/src/midi_sequencer_impl.hpp
+++ b/src/midi_sequencer_impl.hpp
@@ -1225,12 +1225,12 @@ BW_MidiSequencer::MidiEvent BW_MidiSequencer::parseEvent(const uint8_t **pptr, c
if(m_interface->onDebugMessage)
m_interface->onDebugMessage(m_interface->onDebugMessage_userData, "Music title: %s", m_musTitle.c_str());
}
- else if(m_interface->onDebugMessage)
+ else
{
- //TODO: Store track titles and associate them with each track and make API to retreive them
std::string str((const char *)evt.data.data(), evt.data.size());
m_musTrackTitles.push_back(str);
- m_interface->onDebugMessage(m_interface->onDebugMessage_userData, "Track title: %s", str.c_str());
+ if(m_interface->onDebugMessage)
+ m_interface->onDebugMessage(m_interface->onDebugMessage_userData, "Track title: %s", str.c_str());
}
}
else if(evt.subtype == MidiEvent::ST_INSTRTITLE)
@@ -2117,7 +2117,7 @@ bool BW_MidiSequencer::parseIMF(FileAndMemReader &fr)
event.data[0] = imfRaw[0]; // port index
event.data[1] = imfRaw[1]; // port value
event.absPosition = abs_position;
- event.isValid = true;
+ event.isValid = 1;
evtPos.events.push_back(event);
evtPos.delay = static_cast<uint64_t>(imfRaw[2]) + 256 * static_cast<uint64_t>(imfRaw[3]);
@@ -2131,7 +2131,7 @@ bool BW_MidiSequencer::parseIMF(FileAndMemReader &fr)
}
}
- if(m_trackData[0].size() > 0)
+ if(!m_trackData[0].empty())
m_currentPosition.track[0].pos = m_trackData[0].begin();
buildTimeLine(temposList);