]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ALSA: ca0106: Use snd_ctl_rename() to rename a control
authorMaciej S. Szmigiero <maciej.szmigiero@oracle.com>
Thu, 20 Oct 2022 20:46:25 +0000 (22:46 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Nov 2022 15:00:18 +0000 (00:00 +0900)
commit 957ccc434c398a88a332ae92d70790c186a18a1c upstream.

With the recent addition of hashed controls lookup it's not enough to just
update the control name field, the hash entries for the modified control
have to be updated too.

snd_ctl_rename() takes care of that, so use it instead of directly
modifying the control name.

Fixes: c27e1efb61c5 ("ALSA: control: Use xarray for faster lookups")
Cc: stable@vger.kernel.org
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Link: https://lore.kernel.org/r/bffee980a420f9b0eee5681d2f48d34a70cec0ce.1666296963.git.maciej.szmigiero@oracle.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/ca0106/ca0106_mixer.c

index 05f56015ddd872ea4c1d466f8e65c9bc815797a4..f6381c098d4f697fa9a5e5a4c93eebaec00e3e1c 100644 (file)
@@ -720,7 +720,7 @@ static int rename_ctl(struct snd_card *card, const char *src, const char *dst)
 {
        struct snd_kcontrol *kctl = ctl_find(card, src);
        if (kctl) {
-               strcpy(kctl->id.name, dst);
+               snd_ctl_rename(card, kctl, dst);
                return 0;
        }
        return -ENOENT;