commit 5c21c5ba40e608ed70d4f5dfda20811c97ab6864
Author: ceski <56656010+ceski-1@users.noreply.github.com>
AuthorDate: Mon May 15 11:51:29 2023 -0700
Commit: ceski <56656010+ceski-1@users.noreply.github.com>
CommitDate: Tue May 16 09:13:40 2023 -0700
Move meta message handling
---
src/i_winmusic.c | 46 ++++++++++++++++++++++++++--------------------
1 file changed, 26 insertions(+), 20 deletions(-)
diff --git a/src/i_winmusic.c b/src/i_winmusic.c
index f5affef9..e1b2ab50 100644
--- a/src/i_winmusic.c
+++ b/src/i_winmusic.c
@@ -792,6 +792,31 @@ static void SendEMIDI(unsigned int delta_time, const midi_event_t *event,
}
}
+static void SendMetaMsg(unsigned int delta_time, const midi_event_t *event,
+ win_midi_track_t *track)
+{
+ switch (event->data.meta.type)
+ {
+ case MIDI_META_END_OF_TRACK:
+ track->end_of_track = true;
+ SendNOPMsg(delta_time);
+ break;
+
+ case MIDI_META_SET_TEMPO:
+ UpdateTempo(delta_time, event);
+ break;
+
+ case MIDI_META_MARKER:
+ CheckFFLoop(event);
+ SendNOPMsg(delta_time);
+ break;
+
+ default:
+ SendNOPMsg(delta_time);
+ break;
+ }
+}
+
static boolean AddToBuffer(unsigned int delta_time, const midi_event_t *event,
win_midi_track_t *track)
{
@@ -809,26 +834,7 @@ static boolean AddToBuffer(unsigned int delta_time, const midi_event_t *event,
return false;
case MIDI_EVENT_META:
- switch (event->data.meta.type)
- {
- case MIDI_META_END_OF_TRACK:
- track->end_of_track = true;
- SendNOPMsg(delta_time);
- break;
-
- case MIDI_META_SET_TEMPO:
- UpdateTempo(delta_time, event);
- break;
-
- case MIDI_META_MARKER:
- CheckFFLoop(event);
- SendNOPMsg(delta_time);
- break;
-
- default:
- SendNOPMsg(delta_time);
- break;
- }
+ SendMetaMsg(delta_time, event, track);
return true;
}