From 054e70ec0ee6e82c2c253884db37d207790b8899 Mon Sep 17 00:00:00 2001 From: Aditya Bavanari Date: Fri, 25 Jan 2019 19:34:16 +0530 Subject: [PATCH] asoc: sm6150: Fix logic in comparison of sound card name Use strlen instead of sizeof in strnstr operations to return the exact size of sound card name. Change-Id: Id579a41ed79d4443dac7dd2e709784e9dfa186ac Signed-off-by: Aditya Bavanari --- asoc/sm6150.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/asoc/sm6150.c b/asoc/sm6150.c index c59da4c09b76..4e084e312f25 100644 --- a/asoc/sm6150.c +++ b/asoc/sm6150.c @@ -8766,8 +8766,8 @@ static int msm_init_aux_dev(struct platform_device *pdev, __func__, found); codec_aux_dev: - if (!strnstr(card->name, "tavil", sizeof("tavil")) && - !strnstr(card->name, "tasha", sizeof("tasha"))) { + if (!strnstr(card->name, "tavil", strlen(card->name)) && + !strnstr(card->name, "tasha", strlen(card->name))) { /* Get maximum aux codec device count for this platform */ ret = of_property_read_u32(pdev->dev.of_node, "qcom,codec-max-aux-devs", @@ -9002,8 +9002,8 @@ static int sm6150_ssr_enable(struct device *dev, void *data) goto err; } - if (strnstr(card->name, "tavil", sizeof("tavil")) || - strnstr(card->name, "tasha", sizeof("tasha"))) { + if (strnstr(card->name, "tavil", strlen(card->name)) || + strnstr(card->name, "tasha", strlen(card->name))) { pdata = snd_soc_card_get_drvdata(card); if (!pdata->is_afe_config_done) { const char *be_dl_name = LPASS_BE_SLIMBUS_0_RX; @@ -9053,8 +9053,8 @@ static void sm6150_ssr_disable(struct device *dev, void *data) dev_dbg(dev, "%s: setting snd_card to OFFLINE\n", __func__); snd_soc_card_change_online_state(card, 0); - if (strnstr(card->name, "tavil", sizeof("tavil")) || - strnstr(card->name, "tasha", sizeof("tasha"))) { + if (strnstr(card->name, "tavil", strlen(card->name)) || + strnstr(card->name, "tasha", strlen(card->name))) { pdata = snd_soc_card_get_drvdata(card); msm_afe_clear_config(); pdata->is_afe_config_done = false; @@ -9280,8 +9280,8 @@ static int msm_asoc_machine_probe(struct platform_device *pdev) } msm_i2s_auxpcm_init(pdev); - if (!strnstr(card->name, "tavil", sizeof("tavil")) && - !strnstr(card->name, "tasha", sizeof("tasha"))) { + if (!strnstr(card->name, "tavil", strlen(card->name)) && + !strnstr(card->name, "tasha", strlen(card->name))) { pdata->dmic01_gpio_p = of_parse_phandle(pdev->dev.of_node, "qcom,cdc-dmic01-gpios", 0);