mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-05-30 16:30:43 +00:00
work towards a more secure qfs
This commit is contained in:
parent
68d2167c9e
commit
851d203916
19 changed files with 193 additions and 167 deletions
|
@ -253,7 +253,7 @@ CL_Record_f (void)
|
|||
} else
|
||||
track = -1;
|
||||
|
||||
snprintf (name, sizeof (name), "%s/%s", qfs_gamedir_path, Cmd_Argv (1));
|
||||
snprintf (name, sizeof (name), "%s/%s", qfs_gamedir->dir.def, Cmd_Argv (1));
|
||||
|
||||
// start the map up
|
||||
//
|
||||
|
@ -265,13 +265,12 @@ CL_Record_f (void)
|
|||
#ifdef HAVE_ZLIB
|
||||
if (demo_gzip->int_val) {
|
||||
QFS_DefaultExtension (name, ".dem.gz");
|
||||
cls.demofile = Qopen (name, va ("wbz%d",
|
||||
bound (1, demo_gzip->int_val, 9)));
|
||||
cls.demofile = QFS_WOpen (name, demo_gzip->int_val);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
QFS_DefaultExtension (name, ".dem");
|
||||
cls.demofile = Qopen (name, "wb");
|
||||
cls.demofile = QFS_WOpen (name, 0);
|
||||
}
|
||||
|
||||
if (!cls.demofile) {
|
||||
|
|
|
@ -285,8 +285,8 @@ Host_WriteConfiguration (void)
|
|||
// dedicated servers initialize the host but don't parse and set the
|
||||
// config.cfg cvars
|
||||
if (host_initialized && !isDedicated && cl_writecfg->int_val) {
|
||||
char *path = va ("%s/config.cfg", qfs_gamedir_path);
|
||||
f = Qopen (path, "w");
|
||||
char *path = va ("%s/config.cfg", qfs_gamedir->dir.def);
|
||||
f = QFS_WOpen (path, 0);
|
||||
if (!f) {
|
||||
Con_Printf ("Couldn't write config.cfg.\n");
|
||||
return;
|
||||
|
|
|
@ -465,11 +465,11 @@ Host_Savegame_f (void)
|
|||
}
|
||||
}
|
||||
|
||||
snprintf (name, sizeof (name), "%s/%s", qfs_gamedir_path, Cmd_Argv (1));
|
||||
snprintf (name, sizeof (name), "%s/%s", qfs_gamedir->dir.def, Cmd_Argv (1));
|
||||
QFS_DefaultExtension (name, ".sav");
|
||||
|
||||
Con_Printf ("Saving game to %s...\n", name);
|
||||
f = Qopen (name, "w");
|
||||
f = QFS_WOpen (name, 0);
|
||||
if (!f) {
|
||||
Con_Printf ("ERROR: couldn't open.\n");
|
||||
return;
|
||||
|
@ -528,7 +528,8 @@ Host_Loadgame_f (void)
|
|||
|
||||
cls.demonum = -1; // stop demo loop in case this fails
|
||||
|
||||
snprintf (name, sizeof (name), "%s/%s", qfs_gamedir_path, Cmd_Argv (1));
|
||||
snprintf (name, sizeof (name), "%s/%s/%s", fs_userpath->string,
|
||||
qfs_gamedir->dir.def, Cmd_Argv (1));
|
||||
QFS_DefaultExtension (name, ".sav");
|
||||
|
||||
// we can't call SCR_BeginLoadingPlaque, because too much stack space has
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue