audio: fix misc defects in AHAL
Fix misc defects in AHAL.
Change-Id: I5817ba328f0242e20b127b446a4e7e1655583968
CRs-Fixed: 2444364
diff --git a/hal/audio_extn/audio_extn.c b/hal/audio_extn/audio_extn.c
index 24ed4c5..8968507 100644
--- a/hal/audio_extn/audio_extn.c
+++ b/hal/audio_extn/audio_extn.c
@@ -46,6 +46,7 @@
#include <cutils/properties.h>
#include <log/log.h>
#include <unistd.h>
+#include <sched.h>
#include "audio_hw.h"
#include "audio_extn.h"
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 9f90d93..87d7c03 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -5069,6 +5069,7 @@
pthread_mutex_lock(&adev->lock);
select_devices(adev, out->usecase);
if (!audio_extn_passthru_is_supported_backend_edid_cfg(adev, out)) {
+ pthread_mutex_unlock(&adev->lock);
ret = -EINVAL;
goto exit;
}
diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c
index 7b15f53..f28c8ef 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -1993,6 +1993,10 @@
snd_card_name = mixer_get_name(my_data->adev->mixer);
snd_card_name = platform_get_snd_card_name_for_acdb_loader(snd_card_name);
+ if (!snd_card_name) {
+ ALOGE("Failed to get snd_card_name");
+ goto cleanup;
+ }
my_data->acdb_init_data.cvd_version = cvd_version;
my_data->acdb_init_data.snd_card_name = strdup(snd_card_name);
@@ -2014,6 +2018,7 @@
strlcpy(my_data->snd_card_name, snd_card_name,
MAX_SND_CARD_STRING_SIZE);
+cleanup:
if (cvd_version)
free(cvd_version);
if (!result) {
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index efbd0ae..6cd5c8b 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -2426,11 +2426,11 @@
}
snd_card_name = mixer_get_name(my_data->adev->mixer);
+ snd_card_name = platform_get_snd_card_name_for_acdb_loader(snd_card_name);
if (!snd_card_name) {
ALOGE("Failed to get snd_card_name");
goto cleanup;
}
- snd_card_name = platform_get_snd_card_name_for_acdb_loader(snd_card_name);
my_data->acdb_init_data.cvd_version = cvd_version;
my_data->acdb_init_data.snd_card_name = strdup(snd_card_name);