diff options
Diffstat (limited to 'src/multimedia/windows/qwindowsmediadevices.cpp')
-rw-r--r-- | src/multimedia/windows/qwindowsmediadevices.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/multimedia/windows/qwindowsmediadevices.cpp b/src/multimedia/windows/qwindowsmediadevices.cpp index b01ac5fa5..fcad8bab7 100644 --- a/src/multimedia/windows/qwindowsmediadevices.cpp +++ b/src/multimedia/windows/qwindowsmediadevices.cpp @@ -208,10 +208,11 @@ QList<QAudioDevice> QWindowsMediaDevices::availableDevices(QAudioDevice::Mode mo LPWSTR id = nullptr; QString sid; - if (SUCCEEDED(m_deviceEnumerator->GetDefaultAudioEndpoint(dataFlow, ERole::eMultimedia, dev.address())) - && SUCCEEDED(dev->GetId(&id))) { - sid = QString::fromWCharArray(id); - CoTaskMemFree(id); + if (SUCCEEDED(m_deviceEnumerator->GetDefaultAudioEndpoint(dataFlow, ERole::eMultimedia, dev.address()))) { + if (dev && SUCCEEDED(dev->GetId(&id))) { + sid = QString::fromWCharArray(id); + CoTaskMemFree(id); + } } return sid.toUtf8(); }(); |