make sure to call process_rewind() under all circumstances before we do the next loop iteration

This commit is contained in:
Lennart Poettering 2008-06-26 02:56:00 +02:00
parent 1e36b57b13
commit eab1cb8df9
10 changed files with 69 additions and 39 deletions

View file

@ -204,8 +204,12 @@ static void thread_func(void *userdata) {
now = pa_rtclock_usec();
if (u->sink->thread_info.rewind_nbytes > 0)
process_rewind(u, now);
if (u->sink->thread_info.rewind_requested) {
if (u->sink->thread_info.rewind_nbytes > 0)
process_rewind(u, now);
else
pa_sink_process_rewind(u->sink, 0);
}
if (u->timestamp <= now)
process_render(u, now);