mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2026-03-03 01:40:08 -05:00
control: eld - skip trailing spaces
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
9253f08fb7
commit
4633d35171
1 changed files with 6 additions and 3 deletions
|
|
@ -47,7 +47,7 @@ int __snd_pcm_info_eld_fixup(snd_pcm_info_t * info)
|
||||||
snd_ctl_elem_info_t cinfo = {0};
|
snd_ctl_elem_info_t cinfo = {0};
|
||||||
snd_ctl_elem_value_t value = {0};
|
snd_ctl_elem_value_t value = {0};
|
||||||
unsigned char *eld;
|
unsigned char *eld;
|
||||||
unsigned int l;
|
unsigned int l, spc;
|
||||||
char *s, c;
|
char *s, c;
|
||||||
int ret, valid;
|
int ret, valid;
|
||||||
|
|
||||||
|
|
@ -82,20 +82,23 @@ int __snd_pcm_info_eld_fixup(snd_pcm_info_t * info)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
s = alloca(l + 1);
|
s = alloca(l + 1);
|
||||||
s[l] = '\0';
|
|
||||||
/* sanitize */
|
/* sanitize */
|
||||||
valid = 0;
|
valid = 0;
|
||||||
|
spc = 0;
|
||||||
while (l > 0) {
|
while (l > 0) {
|
||||||
l--;
|
l--;
|
||||||
c = eld[20 + l];
|
c = eld[20 + l];
|
||||||
if (c < ' ' || c >= 0x7f) {
|
if (c <= ' ' || c >= 0x7f) {
|
||||||
s[l] = ' ';
|
s[l] = ' ';
|
||||||
} else {
|
} else {
|
||||||
valid += !!isalnum(c);
|
valid += !!isalnum(c);
|
||||||
s[l] = c;
|
s[l] = c;
|
||||||
|
if (spc == 0)
|
||||||
|
spc = l + 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (valid > 3) {
|
if (valid > 3) {
|
||||||
|
s[spc] = '\0';
|
||||||
snd_strlcpy((char *)info->name, s, sizeof(info->name));
|
snd_strlcpy((char *)info->name, s, sizeof(info->name));
|
||||||
} else {
|
} else {
|
||||||
__present:
|
__present:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue