mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
Fixed an issue in 9fda031
This commit is contained in:
parent
0ff16ddadb
commit
8b4ba1ff25
1 changed files with 19 additions and 8 deletions
|
|
@ -124,18 +124,29 @@ void AudioDeviceManager::audioDeviceListChanged()
|
||||||
{
|
{
|
||||||
if (currentAudioDevice != nullptr)
|
if (currentAudioDevice != nullptr)
|
||||||
{
|
{
|
||||||
auto isCurrentDeviceStillAvailable = [&]
|
auto currentDeviceStillAvailable = [&]
|
||||||
{
|
{
|
||||||
for (auto* dt : availableDeviceTypes)
|
auto currentTypeName = currentAudioDevice->getTypeName();
|
||||||
if (currentAudioDevice->getTypeName() == dt->getTypeName())
|
auto currentDeviceName = currentAudioDevice->getName();
|
||||||
for (auto& dn : dt->getDeviceNames (true))
|
|
||||||
if (currentAudioDevice->getName() == dn)
|
for (auto* deviceType : availableDeviceTypes)
|
||||||
|
{
|
||||||
|
if (currentTypeName == deviceType->getTypeName())
|
||||||
|
{
|
||||||
|
for (auto& deviceName : deviceType->getDeviceNames (true))
|
||||||
|
if (currentDeviceName == deviceName)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
for (auto& deviceName : deviceType->getDeviceNames (false))
|
||||||
};
|
if (currentDeviceName == deviceName)
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (! isCurrentDeviceStillAvailable())
|
return false;
|
||||||
|
}();
|
||||||
|
|
||||||
|
if (! currentDeviceStillAvailable)
|
||||||
{
|
{
|
||||||
closeAudioDevice();
|
closeAudioDevice();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue