summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Brand <tom@trellis.ch>2019-01-22 14:27:09 +0100
committerThomas Brand <tom@trellis.ch>2019-01-22 14:27:09 +0100
commitcf0892305d30eed32a26e1f6e946290fc67bf619 (patch)
treec1a663e01a3dfe7ddbac366d5008d87cc833dfdf
parenta4b588bde0fdbd2067b033c97c1cacadc1ca5bba (diff)
downloadjack2-cf0892305d30eed32a26e1f6e946290fc67bf619.tar.gz
Check early if jack_midi_event_get() was successful.
-rw-r--r--example-clients/midi_dump.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/example-clients/midi_dump.c b/example-clients/midi_dump.c
index 4ffbd62f..dd5fc241 100644
--- a/example-clients/midi_dump.c
+++ b/example-clients/midi_dump.c
@@ -79,13 +79,14 @@ process (jack_nframes_t frames, void* arg)
for (i = 0; i < N; ++i) {
jack_midi_event_t event;
int r;
-
r = jack_midi_event_get (&event, buffer, i);
- if(event.size>MSG_BUFFER_SIZE) {
+ if (r != 0) {continue;}
+
+ if (event.size > MSG_BUFFER_SIZE) {
fprintf(stderr, "Error: MIDI message was too large, skipping event. Max. allowed size: %d bytes\n", MSG_BUFFER_SIZE);
}
- else if (r == 0 && jack_ringbuffer_write_space (rb) >= sizeof(midimsg)) {
+ else if (jack_ringbuffer_write_space (rb) >= sizeof(midimsg)) {
midimsg m;
m.tme_mon = monotonic_cnt;
m.tme_rel = event.time;
@@ -94,7 +95,7 @@ process (jack_nframes_t frames, void* arg)
jack_ringbuffer_write (rb, (void *) &m, sizeof(midimsg));
}
else {
- fprintf(stderr, "Error: ringbuffer was full, skipping event.\n");
+ fprintf (stderr, "Error: ringbuffer was full, skipping event.\n");
}
}