aboutsummaryrefslogtreecommitdiffhomepage
path: root/backend.c
diff options
context:
space:
mode:
authorcbdev <cb@cbcdn.com>2017-06-05 20:53:02 +0200
committercbdev <cb@cbcdn.com>2017-06-05 20:53:02 +0200
commitddb185aaa2a5ef6a70c130675826c33f90057591 (patch)
tree4a984a603d5e8c712609b10502cce3b4b5baa0bf /backend.c
parent40e123db7713b188162cd94d935f7a395405567a (diff)
downloadmidimonster-ddb185aaa2a5ef6a70c130675826c33f90057591.tar.gz
midimonster-ddb185aaa2a5ef6a70c130675826c33f90057591.tar.bz2
midimonster-ddb185aaa2a5ef6a70c130675826c33f90057591.zip
MIDI backend start procedure
Diffstat (limited to 'backend.c')
-rw-r--r--backend.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/backend.c b/backend.c
index f49bd91..2eb6fcf 100644
--- a/backend.c
+++ b/backend.c
@@ -9,7 +9,7 @@ static instance** instances = NULL;
static size_t nchannels = 0;
static channel** channels = NULL;
-channel* mm_channel(instance* i, uint64_t ident){
+channel* mm_channel(instance* i, uint64_t ident, uint8_t create){
size_t u;
for(u = 0; u < nchannels; u++){
if(channels[u]->instance == 0 && channels[u]->ident == ident){
@@ -17,6 +17,10 @@ channel* mm_channel(instance* i, uint64_t ident){
}
}
+ if(!create){
+ return NULL;
+ }
+
channel** new_chan = realloc(channels, (nchannels + 1) * sizeof(channel*));
if(!new_chan){
fprintf(stderr, "Failed to allocate memory\n");