libpulseaudio: do nothing to backend when unlinking suspended sink

This commit is contained in:
Tom Yan 2019-03-06 22:46:16 +08:00
parent 434411846a
commit 54ebd431e5
2 changed files with 4 additions and 4 deletions

View File

@ -239,8 +239,8 @@ static int state_func_main(pa_sink *s, pa_sink_state_t state, pa_suspend_cause_t
static int state_func_io(pa_sink *s, pa_sink_state_t state, pa_suspend_cause_t suspend_cause) {
struct userdata *u = s->userdata;
if ((PA_SINK_IS_OPENED(s->thread_info.state) && state == PA_SINK_SUSPENDED) ||
(PA_SINK_IS_LINKED(s->thread_info.state) && state == PA_SINK_UNLINKED)) {
if (PA_SINK_IS_OPENED(s->thread_info.state) &&
(state == PA_SINK_SUSPENDED || state == PA_SINK_UNLINKED)) {
if (!u->no_close)
AAudioStream_close(u->stream);
else

View File

@ -224,8 +224,8 @@ finish:
static int state_func(pa_sink *s, pa_sink_state_t state, pa_suspend_cause_t suspend_cause) {
struct userdata *u = s->userdata;
if ((PA_SINK_IS_OPENED(s->state) && state == PA_SINK_SUSPENDED) ||
(PA_SINK_IS_LINKED(s->state) && state == PA_SINK_UNLINKED))
if (PA_SINK_IS_OPENED(s->state) &&
(state == PA_SINK_SUSPENDED || state == PA_SINK_UNLINKED))
(*u->bqPlayerPlay)->SetPlayState(u->bqPlayerPlay, SL_PLAYSTATE_STOPPED);
else if ((s->state == PA_SINK_SUSPENDED || s->state == PA_SINK_INIT) &&
PA_SINK_IS_OPENED(state))