mirror of
https://github.com/UberGames/lilium-voyager.git
synced 2024-12-13 13:40:56 +00:00
Add gamedirectory in .app to searchpath on MacOSX
This commit is contained in:
parent
3648af78dc
commit
87fa68fd41
3 changed files with 32 additions and 1 deletions
|
@ -234,6 +234,12 @@ typedef struct searchpath_s {
|
|||
static char fs_gamedir[MAX_OSPATH]; // this will be a single file name with no separators
|
||||
static cvar_t *fs_debug;
|
||||
static cvar_t *fs_homepath;
|
||||
|
||||
#ifdef MACOS_X
|
||||
// Also search the .app bundle for .pk3 files
|
||||
static cvar_t *fs_apppath;
|
||||
#endif
|
||||
|
||||
static cvar_t *fs_basepath;
|
||||
static cvar_t *fs_basegame;
|
||||
static cvar_t *fs_gamedirvar;
|
||||
|
@ -2392,7 +2398,7 @@ Sets fs_gamedir, adds the directory to the head of the path,
|
|||
then loads the zip headers
|
||||
================
|
||||
*/
|
||||
static void FS_AddGameDirectory( const char *path, const char *dir ) {
|
||||
void FS_AddGameDirectory( const char *path, const char *dir ) {
|
||||
searchpath_t *sp;
|
||||
int i;
|
||||
searchpath_t *search;
|
||||
|
@ -2723,6 +2729,14 @@ static void FS_Startup( const char *gameName )
|
|||
FS_AddGameDirectory( fs_basepath->string, gameName );
|
||||
}
|
||||
// fs_homepath is somewhat particular to *nix systems, only add if relevant
|
||||
|
||||
#ifdef MACOS_X
|
||||
fs_apppath = Cvar_Get ("fs_apppath", Sys_DefaultAppPath(), CVAR_INIT );
|
||||
// Make MacOSX also include the base path included with the .app bundle
|
||||
if (fs_apppath->string[0])
|
||||
FS_AddGameDirectory(fs_apppath->string, gameName);
|
||||
#endif
|
||||
|
||||
// NOTE: same filtering below for mods and basegame
|
||||
if (fs_homepath->string[0] && Q_stricmp(fs_homepath->string,fs_basepath->string)) {
|
||||
FS_AddGameDirectory ( fs_homepath->string, gameName );
|
||||
|
|
|
@ -545,6 +545,8 @@ qboolean FS_ConditionalRestart( int checksumFeed );
|
|||
void FS_Restart( int checksumFeed );
|
||||
// shutdown and restart the filesystem so changes to fs_gamedir can take effect
|
||||
|
||||
void FS_AddGameDirectory( const char *path, const char *dir );
|
||||
|
||||
char **FS_ListFiles( const char *directory, const char *extension, int *numfiles );
|
||||
// directory should not have either a leading or trailing /
|
||||
// if extension is "/", only subdirectories will be returned
|
||||
|
@ -1027,6 +1029,11 @@ void Sys_Mkdir( const char *path );
|
|||
char *Sys_Cwd( void );
|
||||
void Sys_SetDefaultInstallPath(const char *path);
|
||||
char *Sys_DefaultInstallPath(void);
|
||||
|
||||
#ifdef MACOS_X
|
||||
char *Sys_DefaultAppPath(void);
|
||||
#endif
|
||||
|
||||
void Sys_SetDefaultHomePath(const char *path);
|
||||
char *Sys_DefaultHomePath(void);
|
||||
const char *Sys_Dirname( char *path );
|
||||
|
|
|
@ -93,6 +93,16 @@ char *Sys_DefaultInstallPath(void)
|
|||
return Sys_Cwd();
|
||||
}
|
||||
|
||||
/*
|
||||
=================
|
||||
Sys_DefaultAppPath
|
||||
=================
|
||||
*/
|
||||
char *Sys_DefaultAppPath(void)
|
||||
{
|
||||
return Sys_BinaryPath();
|
||||
}
|
||||
|
||||
/*
|
||||
=================
|
||||
Sys_In_Restart_f
|
||||
|
|
Loading…
Reference in a new issue