mirror of
https://github.com/UberGames/ioef.git
synced 2024-11-24 05:01:40 +00:00
- Check for invalid filename in OpenAL's RegisterSound function.
- Changed Base sound system to warn not error when sound filename is empty or too long.
This commit is contained in:
parent
6c1045a003
commit
3da8779180
2 changed files with 22 additions and 6 deletions
|
@ -258,14 +258,17 @@ static sfx_t *S_FindName( const char *name ) {
|
|||
sfx_t *sfx;
|
||||
|
||||
if (!name) {
|
||||
Com_Error (ERR_FATAL, "S_FindName: NULL");
|
||||
Com_Error(ERR_FATAL, "Sound name is NULL");
|
||||
}
|
||||
|
||||
if (!name[0]) {
|
||||
Com_Error (ERR_FATAL, "S_FindName: empty name");
|
||||
Com_Printf( S_COLOR_YELLOW "WARNING: Sound name is empty\n" );
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (strlen(name) >= MAX_QPATH) {
|
||||
Com_Error (ERR_FATAL, "Sound name too long: %s", name);
|
||||
Com_Printf( S_COLOR_YELLOW "WARNING: Sound name is too long: %s\n", name );
|
||||
return NULL;
|
||||
}
|
||||
|
||||
hash = S_HashSFXName(name);
|
||||
|
@ -351,12 +354,11 @@ sfxHandle_t S_Base_RegisterSound( const char *name, qboolean compressed ) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
if ( strlen( name ) >= MAX_QPATH ) {
|
||||
Com_Printf( "Sound name exceeds MAX_QPATH\n" );
|
||||
sfx = S_FindName( name );
|
||||
if ( !sfx ) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
sfx = S_FindName( name );
|
||||
if ( sfx->soundData ) {
|
||||
if ( sfx->defaultSound ) {
|
||||
Com_Printf( S_COLOR_YELLOW "WARNING: could not find %s - using default\n", sfx->soundName );
|
||||
|
|
|
@ -194,6 +194,20 @@ static sfxHandle_t S_AL_BufferFind(const char *filename)
|
|||
sfxHandle_t sfx = -1;
|
||||
int i;
|
||||
|
||||
if ( !filename ) {
|
||||
Com_Error( ERR_FATAL, "Sound name is NULL" );
|
||||
}
|
||||
|
||||
if ( !filename[0] ) {
|
||||
Com_Printf( S_COLOR_YELLOW "WARNING: Sound name is empty\n" );
|
||||
return 0;
|
||||
}
|
||||
|
||||
if ( strlen( filename ) >= MAX_QPATH ) {
|
||||
Com_Printf( S_COLOR_YELLOW "WARNING: Sound name is too long: %s\n", filename );
|
||||
return 0;
|
||||
}
|
||||
|
||||
for(i = 0; i < numSfx; i++)
|
||||
{
|
||||
if(!Q_stricmp(knownSfx[i].filename, filename))
|
||||
|
|
Loading…
Reference in a new issue