q3map2: fix dangling pointer dereference

`last` was used but not initialized.

Also fixes a segmentation fault if PATH is not in the environment.
This commit is contained in:
Ben Noordhuis 2012-03-18 01:53:03 +01:00
parent d7e9dab03d
commit 808e1c9f6f
1 changed files with 4 additions and 8 deletions

View File

@ -111,20 +111,16 @@ void LokiInitPaths( char *argv0 ){
home = ".";
}
path = getenv( "PATH" );
/* do some path divining */
strcpy( temp, argv0 );
if ( strrchr( temp, '/' ) ) {
argv0 = strrchr( argv0, '/' ) + 1;
}
else
{
/* get path environment variable */
path = getenv( "PATH" );
/* minor setup */
last[ 0 ] = path[ 0 ];
last[ 1 ] = '\0';
else if ( path ) {
found = qfalse;
last = path;
/* go through each : segment of path */
while ( last[ 0 ] != '\0' && found == qfalse )