summaryrefslogtreecommitdiff
path: root/sound/core/init.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2010-10-25 09:56:32 +0200
committerTakashi Iwai <tiwai@suse.de>2010-10-25 09:56:32 +0200
commit79fc84c7e0d2fe89c4e82f3a26fd8b0d13c31703 (patch)
treee32a4c267dc1b5950012e18c1e71d8057140f1f5 /sound/core/init.c
parentf6f94e2ab1b33f0082ac22d71f66385a60d8157f (diff)
parent97c44b2dbd0060e2e6bd56236eb638ab02ec7f30 (diff)
Merge branch 'topic/misc' into for-linus
Diffstat (limited to 'sound/core/init.c')
-rw-r--r--sound/core/init.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sound/core/init.c b/sound/core/init.c
index ec4a50ce5656..2de45fbd70fb 100644
--- a/sound/core/init.c
+++ b/sound/core/init.c
@@ -607,11 +607,16 @@ card_id_store_attr(struct device *dev, struct device_attribute *attr,
return -EEXIST;
}
for (idx = 0; idx < snd_ecards_limit; idx++) {
- if (snd_cards[idx] && !strcmp(snd_cards[idx]->id, buf1))
- goto __exist;
+ if (snd_cards[idx] && !strcmp(snd_cards[idx]->id, buf1)) {
+ if (card == snd_cards[idx])
+ goto __ok;
+ else
+ goto __exist;
+ }
}
strcpy(card->id, buf1);
snd_info_card_id_change(card);
+__ok:
mutex_unlock(&snd_card_mutex);
return count;