X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=audiod.c;h=3e86af537431ff67b00a47694fcaa506dea41837;hb=f192fc3c0f824b951c4cb275d7b54b2651de7e8e;hp=0fae454c51708a5db51a2833e1fa5fc74d0b72a2;hpb=8e875411f29b017313482637cbc5b74a69f4ddde;p=paraslash.git diff --git a/audiod.c b/audiod.c index 0fae454c..3e86af53 100644 --- a/audiod.c +++ b/audiod.c @@ -829,11 +829,14 @@ static int parse_stream_command(const char *txt, const char **cmd) static int add_filter(int format, const char *cmdline) { struct audio_format_info *a = &afi[format]; - int filter_num, nf = a->num_filters; + int ret, filter_num, nf = a->num_filters; void *cfg; struct lls_parse_result *flpr; - filter_num = filter_setup(cmdline, &cfg, &flpr); + ret = filter_setup(cmdline, &cfg, &flpr); + if (ret < 0) + return ret; + filter_num = ret; a->filter_lpr = arr_realloc(a->filter_lpr, nf + 1, sizeof(flpr)); a->filter_conf = arr_realloc(a->filter_conf, nf + 1, sizeof(void *)); a->filter_nums = arr_realloc(a->filter_nums, nf + 1, sizeof(unsigned));