summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/llwebrtc/llwebrtc.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/indra/llwebrtc/llwebrtc.cpp b/indra/llwebrtc/llwebrtc.cpp
index b33cb054d4..5b322d1b5d 100644
--- a/indra/llwebrtc/llwebrtc.cpp
+++ b/indra/llwebrtc/llwebrtc.cpp
@@ -892,7 +892,9 @@ void LLWebRTCImpl::updateDevices()
void LLWebRTCImpl::OnDevicesUpdated()
{
- updateDevices();
+ // OnDevicesUpdated() is called on macOS CoreAudio's device-change callback
+ // thread. Calling updateDevices() on that thread causes a deadlock.
+ mWorkerThread->PostTask([this] { updateDevices(); });
}