summaryrefslogtreecommitdiffstats
path: root/src/modules/rtp
diff options
context:
space:
mode:
authorMaarten Bosmans <mkbosmans@gmail.com>2011-01-12 07:34:28 +0100
committerMaarten Bosmans <mkbosmans@gmail.com>2011-01-16 02:27:25 +0100
commit72b90ea8ac53e23862284991a2ce355de250f585 (patch)
tree80b658126d3bc1df2df000202367b45e69534dd5 /src/modules/rtp
parent27db0603d6af7d25558af38ed525fc50330a9c32 (diff)
module-rtp-recv: Request proper rewind after underrun
Diffstat (limited to 'src/modules/rtp')
-rw-r--r--src/modules/rtp/module-rtp-recv.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/modules/rtp/module-rtp-recv.c b/src/modules/rtp/module-rtp-recv.c
index 49fdf9b5..b59519fb 100644
--- a/src/modules/rtp/module-rtp-recv.c
+++ b/src/modules/rtp/module-rtp-recv.c
@@ -375,7 +375,9 @@ static int rtpoll_work_cb(pa_rtpoll_item *i) {
if (pa_memblockq_is_readable(s->memblockq) &&
s->sink_input->thread_info.underrun_for > 0) {
pa_log_debug("Requesting rewind due to end of underrun");
- pa_sink_input_request_rewind(s->sink_input, 0, FALSE, TRUE, FALSE);
+ pa_sink_input_request_rewind(s->sink_input,
+ (size_t) (s->sink_input->thread_info.underrun_for == (uint64_t) -1 ? 0 : s->sink_input->thread_info.underrun_for),
+ FALSE, TRUE, FALSE);
}
return 1;