sink: don't sync monitor suspend state when unlinking

When the sink is unlinked, there's no need to update the monitor suspend
state. In fact, trying to do that causes an assertion failure, because
pa_source_sync_suspend() wasn't written to handle the case where the
sink is unlinked.
This commit is contained in:
Tanu Kaskinen 2018-02-22 10:06:59 +02:00
parent 6ed37aeef2
commit d6e39b5e89

View file

@ -481,7 +481,7 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state, pa_suspend_cause_t
}
finish:
if ((suspending || resuming || suspend_cause_changed) && s->monitor_source)
if ((suspending || resuming || suspend_cause_changed) && s->monitor_source && state != PA_SINK_UNLINKED)
pa_source_sync_suspend(s->monitor_source);
return ret;