engine: host: ensure we always have right slashes under Windows

This commit is contained in:
Alibek Omarov 2023-01-04 19:39:52 +03:00
parent 15846a8ea8
commit 51b5d7a41d
1 changed files with 11 additions and 3 deletions

View File

@ -1006,7 +1006,7 @@ void Host_InitCommon( int argc, char **argv, const char *progname, qboolean bCha
if( COM_CheckString( baseDir ) )
{
Q_strncpy( host.rootdir, baseDir, sizeof(host.rootdir) );
Q_strncpy( host.rootdir, baseDir, sizeof( host.rootdir ));
}
else
{
@ -1018,10 +1018,10 @@ void Host_InitCommon( int argc, char **argv, const char *progname, qboolean bCha
if( !( szBasePath = SDL_GetBasePath() ) )
Sys_Error( "couldn't determine current directory: %s", SDL_GetError() );
Q_strncpy( host.rootdir, szBasePath, sizeof( host.rootdir ) );
Q_strncpy( host.rootdir, szBasePath, sizeof( host.rootdir ));
SDL_free( szBasePath );
#else
if( !getcwd( host.rootdir, sizeof(host.rootdir) ) )
if( !getcwd( host.rootdir, sizeof( host.rootdir )))
{
Sys_Error( "couldn't determine current directory: %s", strerror( errno ) );
host.rootdir[0] = 0;
@ -1029,6 +1029,10 @@ void Host_InitCommon( int argc, char **argv, const char *progname, qboolean bCha
#endif
}
#if XASH_WIN32
COM_FixSlashes( host.rootdir );
#endif
len = Q_strlen( host.rootdir );
if( len && host.rootdir[len - 1] == '/' )
@ -1045,6 +1049,10 @@ void Host_InitCommon( int argc, char **argv, const char *progname, qboolean bCha
Q_strncpy( host.rodir, roDir, sizeof( host.rodir ));
}
#if XASH_WIN32
COM_FixSlashes( host.rootdir );
#endif
len = Q_strlen( host.rodir );
if( len && host.rodir[len - 1] == '/' )