From 0c6678146aca38c11093389c662dff8e228974a9 Mon Sep 17 00:00:00 2001 From: ckdo Date: Thu, 24 Oct 2019 15:09:23 +0200 Subject: [PATCH] raop: Fix rewinding handling : process just after request received --- src/modules/raop/raop-sink.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/modules/raop/raop-sink.c b/src/modules/raop/raop-sink.c index 06bf1e8dc..09e895818 100644 --- a/src/modules/raop/raop-sink.c +++ b/src/modules/raop/raop-sink.c @@ -358,17 +358,17 @@ static void thread_func(void *userdata) { size_t index; int ret; - if (PA_SINK_IS_OPENED(u->sink->thread_info.state)) { - if (u->sink->thread_info.rewind_requested) - pa_sink_process_rewind(u->sink, 0); - } - /* Polling (audio data + control socket + timing socket). */ if ((ret = pa_rtpoll_run(u->rtpoll)) < 0) goto fail; else if (ret == 0) goto finish; + if (PA_SINK_IS_OPENED(u->sink->thread_info.state)) { + if (u->sink->thread_info.rewind_requested) + pa_sink_process_rewind(u->sink, 0); + } + if (u->rtpoll_item) { pollfd = pa_rtpoll_item_get_pollfd(u->rtpoll_item, &nbfds); /* If !oob: streaming driven by pollds (POLLOUT) */