diff options
Diffstat (limited to 'sound/core/control.c')
-rw-r--r-- | sound/core/control.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sound/core/control.c b/sound/core/control.c index 6d71f9a7ccbb..636b3b52ef8b 100644 --- a/sound/core/control.c +++ b/sound/core/control.c | |||
@@ -113,7 +113,6 @@ static int snd_ctl_release(struct inode *inode, struct file *file) | |||
113 | unsigned int idx; | 113 | unsigned int idx; |
114 | 114 | ||
115 | ctl = file->private_data; | 115 | ctl = file->private_data; |
116 | fasync_helper(-1, file, 0, &ctl->fasync); | ||
117 | file->private_data = NULL; | 116 | file->private_data = NULL; |
118 | card = ctl->card; | 117 | card = ctl->card; |
119 | write_lock_irqsave(&card->ctl_files_rwlock, flags); | 118 | write_lock_irqsave(&card->ctl_files_rwlock, flags); |
@@ -225,8 +224,13 @@ struct snd_kcontrol *snd_ctl_new1(const struct snd_kcontrol_new *ncontrol, | |||
225 | kctl.id.iface = ncontrol->iface; | 224 | kctl.id.iface = ncontrol->iface; |
226 | kctl.id.device = ncontrol->device; | 225 | kctl.id.device = ncontrol->device; |
227 | kctl.id.subdevice = ncontrol->subdevice; | 226 | kctl.id.subdevice = ncontrol->subdevice; |
228 | if (ncontrol->name) | 227 | if (ncontrol->name) { |
229 | strlcpy(kctl.id.name, ncontrol->name, sizeof(kctl.id.name)); | 228 | strlcpy(kctl.id.name, ncontrol->name, sizeof(kctl.id.name)); |
229 | if (strcmp(ncontrol->name, kctl.id.name) != 0) | ||
230 | snd_printk(KERN_WARNING | ||
231 | "Control name '%s' truncated to '%s'\n", | ||
232 | ncontrol->name, kctl.id.name); | ||
233 | } | ||
230 | kctl.id.index = ncontrol->index; | 234 | kctl.id.index = ncontrol->index; |
231 | kctl.count = ncontrol->count ? ncontrol->count : 1; | 235 | kctl.count = ncontrol->count ? ncontrol->count : 1; |
232 | access = ncontrol->access == 0 ? SNDRV_CTL_ELEM_ACCESS_READWRITE : | 236 | access = ncontrol->access == 0 ? SNDRV_CTL_ELEM_ACCESS_READWRITE : |