Merge pull request #5010 from Neltharion01/master

Fix connection loop in pulseaudio
This commit is contained in:
Alexis Rouillard
2026-07-03 19:54:51 +02:00
committed by GitHub
+2
View File
@@ -99,6 +99,7 @@ void AudioBackend::contextStateCb(pa_context* c, void* data) {
nullptr, nullptr); nullptr, nullptr);
break; break;
case PA_CONTEXT_FAILED: case PA_CONTEXT_FAILED:
if (pa_context_errno(c) != PA_ERR_CONNECTIONREFUSED) {
// When pulseaudio server restarts, the connection is "failed". Try to reconnect. // When pulseaudio server restarts, the connection is "failed". Try to reconnect.
// pa_threaded_mainloop_lock is already acquired in callback threads. // pa_threaded_mainloop_lock is already acquired in callback threads.
// So there is no need to lock it again. // So there is no need to lock it again.
@@ -108,6 +109,7 @@ void AudioBackend::contextStateCb(pa_context* c, void* data) {
backend->context_ = nullptr; backend->context_ = nullptr;
} }
backend->connectContext(); backend->connectContext();
}
break; break;
case PA_CONTEXT_CONNECTING: case PA_CONTEXT_CONNECTING:
case PA_CONTEXT_AUTHORIZING: case PA_CONTEXT_AUTHORIZING: