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