Question about card names

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi ALSA ML

snd_soc_instantiate_card() setups card->snd_card's
"shortname", "longname", "driver" names. (= 1,2,3).

But, it cares only card->snd_card->driver (= 4).
I think we need to care about all naming, but why only driver ??

	static int snd_soc_instantiate_card(struct snd_soc_card *card)
	{
		...
1=>		snprintf(card->snd_card->shortname, sizeof(card->snd_card->shortname),
			 "%s", card->name);
2=>		snprintf(card->snd_card->longname, sizeof(card->snd_card->longname),
			 "%s", card->long_name ? card->long_name : card->name);
3=>		snprintf(card->snd_card->driver, sizeof(card->snd_card->driver),
			 "%s", card->driver_name ? card->driver_name : card->name);
		for (i = 0; i < ARRAY_SIZE(card->snd_card->driver); i++) {
			switch (card->snd_card->driver[i]) {
x=>			case '_':
x=>			case '-':
			case '\0':
				break;
			default:
				if (!isalnum(card->snd_card->driver[i]))
4=>					card->snd_card->driver[i] = '_';
				break;
			}
		}
		...
	}

And, it seems in this loop, it breaks check if it finds "_" or "-" (= x).
If my understanding was correct,
the naming "abcd??efg" will be fixed to "abcd__efg",
but, it do nothing if name was for example "-abcd??efg".
Is this bug ??

Thank you for your help !!
Best regards
---
Kuninori Morimoto
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux