Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6e4faec8 authored by Aditya Bavanari's avatar Aditya Bavanari
Browse files

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
parent 4875a261
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -2205,6 +2205,10 @@ static int platform_acdb_init(void *platform)
    }

    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;
@@ -2228,6 +2232,7 @@ static int platform_acdb_init(void *platform)
    strlcpy(my_data->snd_card_name, snd_card_name,
                                               MAX_SND_CARD_STRING_SIZE);

cleanup:
    if (cvd_version)
        free(cvd_version);
    if (!result) {