summaryrefslogtreecommitdiffstats
path: root/src/modules/module-pipe-sink.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/module-pipe-sink.c')
-rw-r--r--src/modules/module-pipe-sink.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/modules/module-pipe-sink.c b/src/modules/module-pipe-sink.c
index cd25b890..0999935b 100644
--- a/src/modules/module-pipe-sink.c
+++ b/src/modules/module-pipe-sink.c
@@ -184,8 +184,12 @@ static void thread_func(void *userdata) {
/* Render some data and write it to the fifo */
if (u->sink->thread_info.state == PA_SINK_RUNNING) {
- if (u->sink->thread_info.rewind_nbytes > 0)
- process_rewind(u);
+ if (u->sink->thread_info.rewind_requested) {
+ if (u->sink->thread_info.rewind_nbytes > 0)
+ process_rewind(u);
+ else
+ pa_sink_process_rewind(u->sink, 0);
+ }
if (pollfd->revents) {
if (process_render(u) < 0)