summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/core.c b/core.c
index 6698a9e..a99f82a 100644
--- a/core.c
+++ b/core.c
@@ -271,7 +271,7 @@ static int snd_avirt_streams_get(const char *map,
}
}
- return 0;
+ return stream_array->count;
}
/**
@@ -322,8 +322,8 @@ int snd_avirt_audiopath_register(struct snd_avirt_audiopath *audiopath)
// If we have already sealed the streams, configure this AP
if (core.streams_sealed) {
stream_array.count = 0;
- snd_avirt_streams_get(audiopath->uid, &stream_array);
- audiopath->configure(core.card, &stream_array);
+ if (snd_avirt_streams_get(audiopath->uid, &stream_array) > 0)
+ audiopath->configure(core.card, &stream_array);
}
return 0;
@@ -420,8 +420,8 @@ int snd_avirt_streams_seal(void)
for (i = 0; i < MAX_STREAMS; i++)
stream_array.streams[i] = NULL;
stream_array.count = 0;
- snd_avirt_streams_get(ap_obj->path->uid, &stream_array);
- ap_obj->path->configure(core.card, &stream_array);
+ if (snd_avirt_streams_get(ap_obj->path->uid, &stream_array) > 0)
+ ap_obj->path->configure(core.card, &stream_array);
}
err = snd_card_register(core.card);