aboutsummaryrefslogtreecommitdiffstats
path: root/Alc
diff options
context:
space:
mode:
Diffstat (limited to 'Alc')
-rw-r--r--Alc/backends/alsa.c8
-rw-r--r--Alc/backends/portaudio.c24
-rw-r--r--Alc/backends/pulseaudio.c12
-rw-r--r--Alc/backends/sndio.c8
4 files changed, 24 insertions, 28 deletions
diff --git a/Alc/backends/alsa.c b/Alc/backends/alsa.c
index 7b46a9c2..cf0fd378 100644
--- a/Alc/backends/alsa.c
+++ b/Alc/backends/alsa.c
@@ -32,8 +32,8 @@
static const ALCchar alsaDevice[] = "ALSA Default";
-static void *alsa_handle;
#ifdef HAVE_DYNLOAD
+static void *alsa_handle;
#define MAKE_FUNC(f) static typeof(f) * p##f
MAKE_FUNC(snd_strerror);
MAKE_FUNC(snd_pcm_open);
@@ -172,9 +172,9 @@ MAKE_FUNC(snd_card_next);
static ALCboolean alsa_load(void)
{
+#ifdef HAVE_DYNLOAD
if(!alsa_handle)
{
-#ifdef HAVE_DYNLOAD
alsa_handle = LoadLib("libasound.so.2");
if(!alsa_handle)
return ALC_FALSE;
@@ -253,10 +253,8 @@ static ALCboolean alsa_load(void)
LOAD_FUNC(snd_ctl_card_info_get_id);
LOAD_FUNC(snd_card_next);
#undef LOAD_FUNC
-#else
- alsa_handle = (void*)0xDEADBEEF;
-#endif
}
+#endif
return ALC_TRUE;
}
diff --git a/Alc/backends/portaudio.c b/Alc/backends/portaudio.c
index 2ac668b8..81622494 100644
--- a/Alc/backends/portaudio.c
+++ b/Alc/backends/portaudio.c
@@ -33,8 +33,8 @@
static const ALCchar pa_device[] = "PortAudio Default";
-static void *pa_handle;
#ifdef HAVE_DYNLOAD
+static void *pa_handle;
#define MAKE_FUNC(x) static typeof(x) * p##x
MAKE_FUNC(Pa_Initialize);
MAKE_FUNC(Pa_Terminate);
@@ -60,11 +60,11 @@ MAKE_FUNC(Pa_GetStreamInfo);
static ALCboolean pa_load(void)
{
- if(!pa_handle)
- {
- PaError err;
+ PaError err;
#ifdef HAVE_DYNLOAD
+ if(!pa_handle)
+ {
#ifdef _WIN32
# define PALIB "portaudio.dll"
#elif defined(__APPLE__) && defined(__MACH__)
@@ -98,9 +98,6 @@ static ALCboolean pa_load(void)
LOAD_FUNC(Pa_GetDefaultOutputDevice);
LOAD_FUNC(Pa_GetStreamInfo);
#undef LOAD_FUNC
-#else
- pa_handle = (void*)0xDEADBEEF;
-#endif
if((err=Pa_Initialize()) != paNoError)
{
@@ -110,6 +107,13 @@ static ALCboolean pa_load(void)
return ALC_FALSE;
}
}
+#else
+ if((err=Pa_Initialize()) != paNoError)
+ {
+ ERR("Pa_Initialize() returned an error: %s\n", Pa_GetErrorText(err));
+ return ALC_FALSE;
+ }
+#endif
return ALC_TRUE;
}
@@ -424,14 +428,16 @@ ALCboolean alc_pa_init(BackendFuncs *func_list)
void alc_pa_deinit(void)
{
+#ifdef HAVE_DYNLOAD
if(pa_handle)
{
Pa_Terminate();
-#ifdef HAVE_DYNLOAD
CloseLib(pa_handle);
-#endif
pa_handle = NULL;
}
+#else
+ Pa_Terminate();
+#endif
}
void alc_pa_probe(enum DevProbe type)
diff --git a/Alc/backends/pulseaudio.c b/Alc/backends/pulseaudio.c
index 1acdff71..e6d54835 100644
--- a/Alc/backends/pulseaudio.c
+++ b/Alc/backends/pulseaudio.c
@@ -34,8 +34,8 @@
(PA_MAJOR == (major) && PA_MINOR == (minor) && PA_MICRO >= (micro)))
#endif
-static void *pa_handle;
#ifdef HAVE_DYNLOAD
+static void *pa_handle;
#define MAKE_FUNC(x) static typeof(x) * p##x
MAKE_FUNC(pa_context_unref);
MAKE_FUNC(pa_sample_spec_valid);
@@ -273,10 +273,9 @@ static pa_context *connect_context(pa_threaded_mainloop *loop, ALboolean silent)
static ALCboolean pulse_load(void) //{{{
{
ALCboolean ret = ALC_TRUE;
+#ifdef HAVE_DYNLOAD
if(!pa_handle)
{
-#ifdef HAVE_DYNLOAD
-
#ifdef _WIN32
#define PALIB "libpulse-0.dll"
#elif defined(__APPLE__) && defined(__MACH__)
@@ -366,18 +365,13 @@ static ALCboolean pulse_load(void) //{{{
#endif
#undef LOAD_OPTIONAL_FUNC
-#else /* HAVE_DYNLOAD */
- pa_handle = (void*)0xDEADBEEF;
-#endif
-
if(ret == ALC_FALSE)
{
-#ifdef HAVE_DYNLOAD
CloseLib(pa_handle);
-#endif
pa_handle = NULL;
}
}
+#endif /* HAVE_DYNLOAD */
return ret;
} //}}}
diff --git a/Alc/backends/sndio.c b/Alc/backends/sndio.c
index 4866a0a5..6be98c2f 100644
--- a/Alc/backends/sndio.c
+++ b/Alc/backends/sndio.c
@@ -33,8 +33,8 @@
static const ALCchar sndio_device[] = "SndIO Default";
-static void *sndio_handle;
#ifdef HAVE_DYNLOAD
+static void *sndio_handle;
#define MAKE_FUNC(x) static typeof(x) * p##x
MAKE_FUNC(sio_initpar);
MAKE_FUNC(sio_open);
@@ -76,9 +76,9 @@ MAKE_FUNC(sio_onvol);
static ALCboolean sndio_load(void)
{
+#ifdef HAVE_DYNLOAD
if(!sndio_handle)
{
-#ifdef HAVE_DYNLOAD
sndio_handle = LoadLib("libsndio.so");
if(!sndio_handle)
return ALC_FALSE;
@@ -109,10 +109,8 @@ static ALCboolean sndio_load(void)
LOAD_FUNC(sio_setvol);
LOAD_FUNC(sio_onvol);
#undef LOAD_FUNC
-#else
- sndio_handle = (void*)0xDEADBEEF;
-#endif
}
+#endif
return ALC_TRUE;
}