Merge pull request #16525 from amerhifi/master

DEV-2871: signal connection check before emit of devices changed
This commit is contained in:
Shannon Romano 2019-11-22 08:22:24 -08:00 committed by GitHub
commit d76dfbe83b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -159,6 +159,9 @@ void AudioClient::checkDevices() {
auto inputDevices = getAvailableDevices(QAudio::AudioInput, hmdInputName);
auto outputDevices = getAvailableDevices(QAudio::AudioOutput, hmdOutputName);
static const QMetaMethod devicesChangedSig= QMetaMethod::fromSignal(&AudioClient::devicesChanged);
//only emit once the scripting interface has connected to the signal
if (isSignalConnected(devicesChangedSig)) {
Lock lock(_deviceMutex);
if (inputDevices != _inputDevices) {
_inputDevices.swap(inputDevices);
@ -169,6 +172,7 @@ void AudioClient::checkDevices() {
_outputDevices.swap(outputDevices);
emit devicesChanged(QAudio::AudioOutput, _outputDevices);
}
}
}
HifiAudioDeviceInfo AudioClient::getActiveAudioDevice(QAudio::Mode mode) const {