From b526630ab843f9a405be23618d5808d8e65755f3 Mon Sep 17 00:00:00 2001 From: Eric Laurent Date: Thu, 24 Apr 2014 13:36:47 -0700 Subject: [PATCH] audio: fix audio_is_bluetooth_sco_device() Bug: 14268964 Change-Id: Ia2a185c5e0939930c5114209651a1e0db6c36ef3 --- include/system/audio.h | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/include/system/audio.h b/include/system/audio.h index aa7ac021a..f36befb5c 100644 --- a/include/system/audio.h +++ b/include/system/audio.h @@ -471,12 +471,16 @@ static inline bool audio_is_a2dp_device(audio_devices_t device) static inline bool audio_is_bluetooth_sco_device(audio_devices_t device) { - device &= ~AUDIO_DEVICE_BIT_IN; - if ((popcount(device) == 1) && (device & (AUDIO_DEVICE_OUT_ALL_SCO | - AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET))) - return true; - else - return false; + if ((device & AUDIO_DEVICE_BIT_IN) == 0) { + if ((popcount(device) == 1) && ((device & ~AUDIO_DEVICE_OUT_ALL_SCO) == 0)) + return true; + } else { + device &= ~AUDIO_DEVICE_BIT_IN; + if ((popcount(device) == 1) && ((device & ~AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET) == 0)) + return true; + } + + return false; } static inline bool audio_is_usb_device(audio_devices_t device)