From 0cf1f70d9536d78a4e88111be1ee9630a1b00cbd Mon Sep 17 00:00:00 2001
From: Stan Seibert <volsung@xiph.org>
Date: Mon, 13 Aug 2001 05:24:04 +0000
Subject: [PATCH] Default driver is now identified when ao_default_driver_id()
 is called rather than ao_initialize().  This has the benefit of avoiding
 autodetection unless is it necessary.

git-svn-id: http://svn.xiph.org/trunk/ao@1854 0101bb08-14d6-0310-b084-bc0e0c8e3800
---
 src/ao_private.h |  1 -
 src/audio_out.c  | 10 +++-------
 2 files changed, 3 insertions(+), 8 deletions(-)

diff --git a/src/ao_private.h b/src/ao_private.h
index 1bada63..b26e72d 100644
--- a/src/ao_private.h
+++ b/src/ao_private.h
@@ -58,7 +58,6 @@
 
 typedef struct ao_config {
 	char *default_driver;
-	int default_driver_id;
 } ao_config;
 
 /* --- Functions --- */
diff --git a/src/audio_out.c b/src/audio_out.c
index 0ce028e..661724a 100644
--- a/src/audio_out.c
+++ b/src/audio_out.c
@@ -71,7 +71,6 @@ ao_functions *static_drivers[] = {
 driver_list *driver_head = NULL;
 ao_config config = {
 	NULL, /* default_driver */
-	-1,   /* default_driver_id */
 };
 
 ao_info **info_table = NULL;
@@ -85,7 +84,6 @@ void _clear_config()
 {
 	free(config.default_driver);
 	config.default_driver = NULL;
-	config.default_driver_id = -1;
 }
 
 
@@ -506,10 +504,6 @@ void ao_initialize(void)
 		_append_dynamic_drivers(end);
 	}
 
-	/* Find the default driver in the list of loaded drivers */
-	config.default_driver_id = 
-	  _find_default_driver_id(config.default_driver);
-
 	/* Create the table of driver info structs */
 	info_table = _make_info_table(driver_head, &driver_count);
 }
@@ -680,7 +674,9 @@ int ao_driver_id(const char *short_name)
 
 int ao_default_driver_id ()
 {
-	return config.default_driver_id;
+	/* Find the default driver in the list of loaded drivers */
+  
+	return _find_default_driver_id(config.default_driver);
 }
 
 
-- 
GitLab