diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/pulsecore/sink.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index 298cc881..11334037 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -1529,8 +1529,10 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse              s->thread_info.state = PA_PTR_TO_UINT(userdata); -            if (s->thread_info.state == PA_SINK_SUSPENDED) +            if (s->thread_info.state == PA_SINK_SUSPENDED) { +                s->thread_info.rewind_nbytes = 0;                  s->thread_info.rewind_requested = FALSE; +            }              return 0; @@ -1730,7 +1732,7 @@ pa_usec_t pa_sink_get_requested_latency(pa_sink *s) {      return usec;  } -/* Called from IO thread */ +/* Called from IO as well as the main thread -- the latter only before the IO thread started up */  void pa_sink_set_max_rewind(pa_sink *s, size_t max_rewind) {      pa_sink_input *i;      void *state = NULL; @@ -1751,7 +1753,7 @@ void pa_sink_set_max_rewind(pa_sink *s, size_t max_rewind) {          pa_source_set_max_rewind(s->monitor_source, s->thread_info.max_rewind);  } -/* Called from IO thread */ +/* Called from IO as well as the main thread -- the latter only before the IO thread started up */  void pa_sink_set_max_request(pa_sink *s, size_t max_request) {      void *state = NULL;  | 
