prebuffer: Bail out on bufffer tree errors.
authorAndre Noll <maan@tuebingen.mpg.de>
Fri, 1 Jan 2021 15:05:56 +0000 (16:05 +0100)
committerAndre Noll <maan@tuebingen.mpg.de>
Fri, 1 Jan 2021 15:05:56 +0000 (16:05 +0100)
Without this, the prebuffer filter might stay active forever, occupying
a slot of para_audiod until no more slots are available. This was
observed with the udp receiver.

prebuffer_filter.c

index 05ceb88..1988e6e 100644 (file)
@@ -60,6 +60,9 @@ static int prebuffer_post_select(__a_unused struct sched *s, void *context)
        int ret;
 
        ret = task_get_notification(fn->task);
+       if (ret < 0)
+               return ret;
+       ret = btr_node_status(btrn, size, BTR_NT_INTERNAL);
        if (ret < 0)
                return ret;
        if (ppd->barrier.tv_sec == 0)