Mercurial > sdl-ios-xcode
changeset 3803:3decf9cdeb63 SDL-ryan-multiple-audio-device
Removed ESD cruft from the core...now the driver will use esound if there's
an ESPEAKER variable set for a remote host, or the daemon is already running
on the local host, but it won't spawn it. Hopefully this works out okay.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Wed, 04 Oct 2006 22:10:09 +0000 |
parents | cef5d927591f |
children | b12b7ec0dfcc |
files | src/audio/SDL_audio.c src/audio/esd/SDL_esdaudio.c |
diffstat | 2 files changed, 8 insertions(+), 41 deletions(-) [+] |
line wrap: on
line diff
--- a/src/audio/SDL_audio.c Wed Oct 04 21:58:48 2006 +0000 +++ b/src/audio/SDL_audio.c Wed Oct 04 22:10:09 2006 +0000 @@ -370,48 +370,11 @@ SDL_memset(¤t_audio, '\0', sizeof (current_audio)); SDL_memset(open_devices, '\0', sizeof (open_devices)); - /* !!! FIXME: build a priority list of available drivers... */ - /* Select the proper audio driver */ if (driver_name == NULL) { driver_name = SDL_getenv("SDL_AUDIODRIVER"); } -/* !!! FIXME: move this esound shite into the esound driver... */ -#if SDL_AUDIO_DRIVER_ESD - if ((driver_name == NULL) && (SDL_getenv("ESPEAKER") != NULL)) { - /* Ahem, we know that if ESPEAKER is set, user probably wants - to use ESD, but don't start it if it's not already running. - This probably isn't the place to do this, but... Shh! :) - */ - for (i = 0; bootstrap[i]; ++i) { - if (SDL_strcasecmp(bootstrap[i]->name, "esd") == 0) { -#ifdef HAVE_PUTENV - const char *esd_no_spawn; - - /* Don't start ESD if it's not running */ - esd_no_spawn = getenv("ESD_NO_SPAWN"); - if (esd_no_spawn == NULL) { - putenv("ESD_NO_SPAWN=1"); - } -#endif - if (bootstrap[i]->available()) { - SDL_memset(¤t_audio, 0, sizeof (current_audio)); - current_audio.name = bootstrap[i]->name; - current_audio.desc = bootstrap[i]->desc; - initialized = bootstrap[i]->init(¤t_audio.impl); - break; - } -#ifdef HAVE_UNSETENV - if (esd_no_spawn == NULL) { - unsetenv("ESD_NO_SPAWN"); - } -#endif - } - } - } -#endif /* SDL_AUDIO_DRIVER_ESD */ - if (!initialized) { if (driver_name != NULL) { for (i = 0; bootstrap[i]; ++i) {
--- a/src/audio/esd/SDL_esdaudio.c Wed Oct 04 21:58:48 2006 +0000 +++ b/src/audio/esd/SDL_esdaudio.c Wed Oct 04 22:10:09 2006 +0000 @@ -126,10 +126,14 @@ static int Audio_Available(void) { - int connection; - int available; + const char *esd_no_spawn = SDL_getenv("ESD_NO_SPAWN"); + int connection = 0; + int available = 0; - available = 0; + if (esd_no_spawn == NULL) { + SDL_putenv("ESD_NO_SPAWN=1"); /* Don't start ESD if it's not running */ + } + if (LoadESDLibrary() < 0) { return available; } @@ -139,7 +143,7 @@ SDL_NAME(esd_close) (connection); } UnloadESDLibrary(); - return (available); + return available; } static void