perex 097e77
From 133819d420d962b6888c280352a5532da93f1a3a Mon Sep 17 00:00:00 2001
perex 097e77
From: Jaroslav Kysela <perex@perex.cz>
perex 097e77
Date: Wed, 9 Sep 2009 11:24:11 +0200
perex 097e77
Subject: [PATCH] Revert "Fix driver conf parsing in snd_config_hook_load_for_all_cards()"
perex 097e77
perex 097e77
This reverts commit 96da0c842d14b40ce8e37726b259229634b3aa21.
perex 097e77
perex 097e77
This way of fix brokes card-specific configuration loading.
perex 097e77
See http://bugzilla.redhat.com bug#521988 for details.
perex 097e77
perex 097e77
Appropriate way to handle this problem is to fix the dmix configuration file.
perex 097e77
perex 097e77
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
perex 097e77
---
perex 097e77
 src/conf.c |    5 +++--
perex 097e77
 1 files changed, 3 insertions(+), 2 deletions(-)
perex 097e77
perex 097e77
diff --git a/src/conf.c b/src/conf.c
perex 097e77
index 3f0dfe1..570c90f 100644
perex 097e77
--- a/src/conf.c
perex 097e77
+++ b/src/conf.c
perex 097e77
@@ -3477,8 +3477,9 @@ int snd_config_hook_load_for_all_cards(snd_config_t *root, snd_config_t *config,
perex 097e77
 			err = snd_determine_driver(card, &fdriver);
perex 097e77
 			if (err < 0)
perex 097e77
 				return err;
perex 097e77
-			if (snd_config_search(root, fdriver, &n) >= 0 &&
perex 097e77
-			    snd_config_get_string(n, &driver) >= 0) {
perex 097e77
+			if (snd_config_search(root, fdriver, &n) >= 0) {
perex 097e77
+				if (snd_config_get_string(n, &driver) < 0)
perex 097e77
+					goto __err;
perex 097e77
 				assert(driver);
perex 097e77
 				while (1) {
perex 097e77
 					char *s = strchr(driver, '.');
perex 097e77
-- 
perex 097e77
1.5.5.1
perex 097e77