ALSA: hiface: Use scnprintf() in hiface_chip_create()

To prepare for removing strlcat() from the kernel [1], use scnprintf()
instead. Since scnprintf() returns the number of characters actually
written, drop the length check before usb_make_path().

Also drop the explicit size arguments from strscpy() since they can be
inferred from the destination arrays.

No functional change.

Link: https://github.com/KSPP/linux/issues/370 [1]
Signed-off-by: Thorsten Blum <blum@kernel.org>
Link: https://patch.msgid.link/20261021094002.114508-2-blum@kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Thorsten Blum 2026-10-21 11:40:01 +02:00 committed by Takashi Iwai
parent d0bee96f84
commit 87bc966dc5

View File

@ -63,18 +63,15 @@ static int hiface_chip_create(struct usb_interface *intf,
return ret;
}
strscpy(card->driver, DRIVER_NAME, sizeof(card->driver));
strscpy(card->driver, DRIVER_NAME);
if (quirk && quirk->device_name)
strscpy(card->shortname, quirk->device_name, sizeof(card->shortname));
strscpy(card->shortname, quirk->device_name);
else
strscpy(card->shortname, "M2Tech generic audio", sizeof(card->shortname));
strscpy(card->shortname, "M2Tech generic audio");
strlcat(card->longname, card->shortname, sizeof(card->longname));
len = strlcat(card->longname, " at ", sizeof(card->longname));
if (len < sizeof(card->longname))
usb_make_path(device, card->longname + len,
sizeof(card->longname) - len);
len = scnprintf(card->longname, sizeof(card->longname), "%s at ", card->shortname);
usb_make_path(device, card->longname + len, sizeof(card->longname) - len);
chip = card->private_data;
chip->dev = device;