Fix client crash on windows with old OpenAL
This commit is contained in:
parent
59e9bb9ed3
commit
1972bf97db
1 changed files with 13 additions and 7 deletions
|
@ -2410,7 +2410,7 @@ qboolean S_AL_Init( soundInterface_t *si )
|
||||||
int curlen;
|
int curlen;
|
||||||
|
|
||||||
// get all available devices + the default device name.
|
// get all available devices + the default device name.
|
||||||
if(enumeration_ext)
|
if(enumeration_all_ext)
|
||||||
{
|
{
|
||||||
devicelist = qalcGetString(NULL, ALC_ALL_DEVICES_SPECIFIER);
|
devicelist = qalcGetString(NULL, ALC_ALL_DEVICES_SPECIFIER);
|
||||||
defaultdevice = qalcGetString(NULL, ALC_DEFAULT_ALL_DEVICES_SPECIFIER);
|
defaultdevice = qalcGetString(NULL, ALC_DEFAULT_ALL_DEVICES_SPECIFIER);
|
||||||
|
@ -2428,11 +2428,14 @@ qboolean S_AL_Init( soundInterface_t *si )
|
||||||
// Generic Software as that one works more reliably with various sound systems.
|
// Generic Software as that one works more reliably with various sound systems.
|
||||||
// If it's not, use OpenAL's default selection as we don't want to ignore
|
// If it's not, use OpenAL's default selection as we don't want to ignore
|
||||||
// native hardware acceleration.
|
// native hardware acceleration.
|
||||||
if(!device && !strcmp(defaultdevice, "Generic Hardware"))
|
if(!device && defaultdevice && !strcmp(defaultdevice, "Generic Hardware"))
|
||||||
device = "Generic Software";
|
device = "Generic Software";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// dump a list of available devices to a cvar for the user to see.
|
// dump a list of available devices to a cvar for the user to see.
|
||||||
|
|
||||||
|
if(devicelist)
|
||||||
|
{
|
||||||
while((curlen = strlen(devicelist)))
|
while((curlen = strlen(devicelist)))
|
||||||
{
|
{
|
||||||
Q_strcat(devicenames, sizeof(devicenames), devicelist);
|
Q_strcat(devicenames, sizeof(devicenames), devicelist);
|
||||||
|
@ -2440,6 +2443,9 @@ qboolean S_AL_Init( soundInterface_t *si )
|
||||||
|
|
||||||
devicelist += curlen + 1;
|
devicelist += curlen + 1;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
devicelist = "";
|
||||||
|
|
||||||
s_alAvailableDevices = Cvar_Get("s_alAvailableDevices", devicenames, CVAR_ROM | CVAR_NORESTART);
|
s_alAvailableDevices = Cvar_Get("s_alAvailableDevices", devicenames, CVAR_ROM | CVAR_NORESTART);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue