From c548c138edc0fb5c775521ff01d78d3f59400675 Mon Sep 17 00:00:00 2001 From: jules Date: Fri, 27 Dec 2013 11:41:01 +0000 Subject: [PATCH] Another CoreAudio fix. --- .../native/juce_mac_CoreAudio.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp b/modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp index 798bd5155c..799207c56c 100644 --- a/modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp +++ b/modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp @@ -1712,7 +1712,7 @@ public: if (AudioObjectGetPropertyDataSize (kAudioObjectSystemObject, &pa, 0, nullptr, &size) == noErr) { - HeapBlock devs; + HeapBlock devs; devs.calloc (size, 1); if (AudioObjectGetPropertyData (kAudioObjectSystemObject, &pa, 0, nullptr, &size, devs) == noErr) @@ -1833,22 +1833,23 @@ public: if (inputDeviceID == 0 && outputDeviceID == 0) return nullptr; + String combinedName (outputDeviceName.isEmpty() ? inputDeviceName : outputDeviceName); + if (inputDeviceID == outputDeviceID) - return new CoreAudioIODevice (outputDeviceName, inputDeviceID, inputIndex, outputDeviceID, outputIndex); + return new CoreAudioIODevice (combinedName, inputDeviceID, inputIndex, outputDeviceID, outputIndex); ScopedPointer in, out; if (inputDeviceID != 0) - in = new CoreAudioIODevice (outputDeviceName, inputDeviceID, inputIndex, 0, -1); + in = new CoreAudioIODevice (inputDeviceName, inputDeviceID, inputIndex, 0, -1); if (outputDeviceID != 0) - out = new CoreAudioIODevice (inputDeviceName, 0, -1, outputDeviceID, outputIndex); + out = new CoreAudioIODevice (outputDeviceName, 0, -1, outputDeviceID, outputIndex); if (in == nullptr) return out.release(); if (out == nullptr) return in.release(); - ScopedPointer combo (new AudioIODeviceCombiner (outputDeviceName.isEmpty() ? inputDeviceName - : outputDeviceName)); + ScopedPointer combo (new AudioIODeviceCombiner (combinedName)); combo->addDevice (in.release()); combo->addDevice (out.release()); return combo.release();