Clean up some loading checks
This commit is contained in:
parent
7bc739e965
commit
c6340ce12d
18
Alc/alsa.c
18
Alc/alsa.c
@ -118,7 +118,7 @@ static ALuint numCaptureDevNames;
|
||||
static volatile ALuint load_count;
|
||||
|
||||
|
||||
void alsa_load(void)
|
||||
void *alsa_load(void)
|
||||
{
|
||||
if(load_count == 0)
|
||||
{
|
||||
@ -127,7 +127,7 @@ void alsa_load(void)
|
||||
#ifdef HAVE_DLFCN_H
|
||||
alsa_handle = dlopen("libasound.so.2", RTLD_NOW);
|
||||
if(!alsa_handle)
|
||||
return;
|
||||
return NULL;
|
||||
dlerror();
|
||||
|
||||
#define LOAD_FUNC(f) do { \
|
||||
@ -137,7 +137,7 @@ void alsa_load(void)
|
||||
dlclose(alsa_handle); \
|
||||
alsa_handle = NULL; \
|
||||
AL_PRINT("Could not load %s from libasound.so.2: %s\n", #f, str); \
|
||||
return; \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
#else
|
||||
@ -205,6 +205,8 @@ LOAD_FUNC(snd_card_next);
|
||||
#undef LOAD_FUNC
|
||||
}
|
||||
++load_count;
|
||||
|
||||
return alsa_handle;
|
||||
}
|
||||
|
||||
void alsa_unload(void)
|
||||
@ -468,8 +470,7 @@ static ALCboolean alsa_open_playback(ALCdevice *device, const ALCchar *deviceNam
|
||||
return ALC_FALSE;
|
||||
}
|
||||
|
||||
alsa_load();
|
||||
if(!alsa_handle)
|
||||
if(!alsa_load())
|
||||
return ALC_FALSE;
|
||||
|
||||
data = (alsa_data*)calloc(1, sizeof(alsa_data));
|
||||
@ -757,8 +758,7 @@ static ALCboolean alsa_open_capture(ALCdevice *pDevice, const ALCchar *deviceNam
|
||||
return ALC_FALSE;
|
||||
}
|
||||
|
||||
alsa_load();
|
||||
if(!alsa_handle)
|
||||
if(!alsa_load())
|
||||
return ALC_FALSE;
|
||||
|
||||
data = (alsa_data*)calloc(1, sizeof(alsa_data));
|
||||
@ -970,8 +970,8 @@ void alc_alsa_probe(int type)
|
||||
char name[128];
|
||||
ALuint i;
|
||||
|
||||
alsa_load();
|
||||
if(!alsa_handle) return;
|
||||
if(!alsa_load())
|
||||
return;
|
||||
|
||||
psnd_ctl_card_info_malloc(&info);
|
||||
psnd_pcm_info_malloc(&pcminfo);
|
||||
|
14
Alc/dsound.c
14
Alc/dsound.c
@ -74,7 +74,7 @@ static ALuint NumDevices;
|
||||
static volatile ALuint load_count;
|
||||
|
||||
|
||||
void DSoundLoad(void)
|
||||
void *DSoundLoad(void)
|
||||
{
|
||||
if(load_count == 0)
|
||||
{
|
||||
@ -83,7 +83,7 @@ void DSoundLoad(void)
|
||||
if(ds_handle == NULL)
|
||||
{
|
||||
AL_PRINT("Failed to load dsound.dll\n");
|
||||
return;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#define LOAD_FUNC(f) do { \
|
||||
@ -93,7 +93,7 @@ void DSoundLoad(void)
|
||||
FreeLibrary(ds_handle); \
|
||||
ds_handle = NULL; \
|
||||
AL_PRINT("Could not load %s from dsound.dll\n", #f); \
|
||||
return; \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
#else
|
||||
@ -106,6 +106,8 @@ LOAD_FUNC(DirectSoundEnumerateA);
|
||||
#undef LOAD_FUNC
|
||||
}
|
||||
++load_count;
|
||||
|
||||
return ds_handle;
|
||||
}
|
||||
|
||||
void DSoundUnload(void)
|
||||
@ -223,8 +225,7 @@ static ALCboolean DSoundOpenPlayback(ALCdevice *device, const ALCchar *deviceNam
|
||||
return ALC_FALSE;
|
||||
}
|
||||
|
||||
DSoundLoad();
|
||||
if(ds_handle == NULL)
|
||||
if(!DSoundLoad())
|
||||
return ALC_FALSE;
|
||||
|
||||
//Initialise requested device
|
||||
@ -550,8 +551,7 @@ void alcDSoundDeinit(void)
|
||||
|
||||
void alcDSoundProbe(int type)
|
||||
{
|
||||
DSoundLoad();
|
||||
if(!ds_handle) return;
|
||||
if(!DSoundLoad()) return;
|
||||
|
||||
if(type == DEVICE_PROBE)
|
||||
AppendDeviceList(dsDevice);
|
||||
|
@ -50,7 +50,7 @@ static const ALCchar pa_device[] = "PortAudio Software";
|
||||
static volatile ALuint load_count;
|
||||
|
||||
|
||||
void pa_load(void)
|
||||
void *pa_load(void)
|
||||
{
|
||||
const char *str;
|
||||
PaError err;
|
||||
@ -65,7 +65,7 @@ void pa_load(void)
|
||||
#endif
|
||||
pa_handle = dlopen(PALIB, RTLD_NOW);
|
||||
if(!pa_handle)
|
||||
return;
|
||||
return NULL;
|
||||
dlerror();
|
||||
|
||||
#define LOAD_FUNC(f) do { \
|
||||
@ -75,7 +75,7 @@ void pa_load(void)
|
||||
dlclose(pa_handle); \
|
||||
pa_handle = NULL; \
|
||||
AL_PRINT("Could not load %s from "PALIB": %s\n", #f, str); \
|
||||
return; \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
#else
|
||||
@ -103,11 +103,12 @@ LOAD_FUNC(Pa_GetStreamInfo);
|
||||
dlclose(pa_handle);
|
||||
#endif
|
||||
pa_handle = NULL;
|
||||
return;
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
++load_count;
|
||||
|
||||
return pa_handle;
|
||||
}
|
||||
|
||||
void pa_unload(void)
|
||||
@ -155,8 +156,7 @@ static ALCboolean pa_open_playback(ALCdevice *device, const ALCchar *deviceName)
|
||||
else if(strcmp(deviceName, pa_device) != 0)
|
||||
return ALC_FALSE;
|
||||
|
||||
pa_load();
|
||||
if(pa_handle == NULL)
|
||||
if(!pa_load())
|
||||
return ALC_FALSE;
|
||||
|
||||
data = (pa_data*)calloc(1, sizeof(pa_data));
|
||||
@ -287,8 +287,7 @@ void alc_pa_deinit(void)
|
||||
|
||||
void alc_pa_probe(int type)
|
||||
{
|
||||
pa_load();
|
||||
if(!pa_handle) return;
|
||||
if(!pa_load()) return;
|
||||
|
||||
if(type == DEVICE_PROBE)
|
||||
AppendDeviceList(pa_device);
|
||||
|
@ -134,7 +134,7 @@ static const ALCchar pulse_capture_device[] = "PulseAudio Capture";
|
||||
static volatile ALuint load_count;
|
||||
|
||||
|
||||
void pulse_load(void) //{{{
|
||||
void *pulse_load(void) //{{{
|
||||
{
|
||||
if(load_count == 0)
|
||||
{
|
||||
@ -146,7 +146,7 @@ void pulse_load(void) //{{{
|
||||
AL_PRINT("Could not load %s from libpulse-0.dll\n", #x); \
|
||||
FreeLibrary(pa_handle); \
|
||||
pa_handle = NULL; \
|
||||
return; \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
#define LOAD_OPTIONAL_FUNC(x) do { \
|
||||
@ -169,7 +169,7 @@ void pulse_load(void) //{{{
|
||||
AL_PRINT("Could not load %s from libpulse: %s\n", #x, err); \
|
||||
dlclose(pa_handle); \
|
||||
pa_handle = NULL; \
|
||||
return; \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
#define LOAD_OPTIONAL_FUNC(x) do { \
|
||||
@ -187,7 +187,7 @@ void pulse_load(void) //{{{
|
||||
|
||||
#endif
|
||||
if(!pa_handle)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
LOAD_FUNC(pa_context_unref);
|
||||
LOAD_FUNC(pa_sample_spec_valid);
|
||||
@ -245,6 +245,8 @@ LOAD_OPTIONAL_FUNC(pa_stream_begin_write);
|
||||
#undef LOAD_FUNC
|
||||
}
|
||||
++load_count;
|
||||
|
||||
return pa_handle;
|
||||
} //}}}
|
||||
|
||||
void pulse_unload(void) //{{{
|
||||
@ -489,8 +491,7 @@ static ALCboolean pulse_open_playback(ALCdevice *device, const ALCchar *device_n
|
||||
else if(strcmp(device_name, pulse_device) != 0)
|
||||
return ALC_FALSE;
|
||||
|
||||
pulse_load();
|
||||
if(!pa_handle)
|
||||
if(!pulse_load())
|
||||
return ALC_FALSE;
|
||||
|
||||
if(pulse_open(device, device_name) != ALC_FALSE)
|
||||
@ -660,8 +661,7 @@ static ALCboolean pulse_open_capture(ALCdevice *device, const ALCchar *device_na
|
||||
else if(strcmp(device_name, pulse_capture_device) != 0)
|
||||
return ALC_FALSE;
|
||||
|
||||
pulse_load();
|
||||
if(!pa_handle)
|
||||
if(!pulse_load())
|
||||
return ALC_FALSE;
|
||||
|
||||
if(pulse_open(device, device_name) == ALC_FALSE)
|
||||
@ -904,8 +904,7 @@ void alc_pulse_deinit(void) //{{{
|
||||
|
||||
void alc_pulse_probe(int type) //{{{
|
||||
{
|
||||
pulse_load();
|
||||
if(!pa_handle) return;
|
||||
if(!pulse_load()) return;
|
||||
|
||||
if(type == DEVICE_PROBE)
|
||||
AppendDeviceList(pulse_device);
|
||||
|
Loading…
x
Reference in New Issue
Block a user