hal: Fix NULL pointer dereference in get acdb snd card name
When mixer_get_name returns NULL, acdb snd card name
might be NULL leading to NULL pointer dereference. Fix
this by adding a NULL check for sound card name.
CRs-Fixed: 2390227
Change-Id: I53f83cc8277e1c0e35cb528993b6dd153139be10
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 49042cd..a31b048 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -1934,6 +1934,10 @@
}
snd_card_name = mixer_get_name(my_data->adev->mixer);
+ 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;
@@ -1957,6 +1961,7 @@
strlcpy(my_data->snd_card_name, snd_card_name,
MAX_SND_CARD_STRING_SIZE);
+cleanup:
if (cvd_version)
free(cvd_version);
if (!result) {