X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=audiod.c;h=89b160db527ae9397a2bd2b216b304d6c4c8920f;hp=5c17e6eab1337d8b23584faa67f443cd4f11a200;hb=fd62cf6f3c17ec9f504d3a05be4fd48f969dcb01;hpb=28f8405e062fcff1f0ce90eb01ffeaca299cffa7 diff --git a/audiod.c b/audiod.c index 5c17e6ea..89b160db 100644 --- a/audiod.c +++ b/audiod.c @@ -358,6 +358,8 @@ static void close_receiver(int slot_num) btr_free_node(s->receiver_node->btrn); free(s->receiver_node); s->receiver_node = NULL; + tv_add(now, &(struct timeval)EMBRACE(0, 200 * 1000), + &a->restart_barrier); } static void writer_cleanup(struct writer_node *wn) @@ -1220,6 +1222,8 @@ static void status_post_select(__a_unused struct sched *s, struct task *t) st->min_iqs = sz + 1; goto out; } + btr_drain(st->btrn); + st->current_audio_format_num = -1; if (tv_diff(now, &st->restart_barrier, NULL) < 0) goto out; if (st->clock_diff_count) { /* get status only one time */