quakespasm/Misc/fs_search_order.patch

36 lines
1.1 KiB
Diff

allow plain files to override files inside a PAK file -- Sander van Dijk.
Index: Quake/common.c
===================================================================
--- Quake/common.c (revision 1476)
+++ Quake/common.c (working copy)
@@ -2036,13 +2036,6 @@ static void COM_AddGameDirectory (const
else path_id = 1U;
_add_path:
- // add the directory to the search path
- search = (searchpath_t *) Z_Malloc(sizeof(searchpath_t));
- search->path_id = path_id;
- q_strlcpy (search->filename, com_gamedir, sizeof(search->filename));
- search->next = com_searchpaths;
- com_searchpaths = search;
-
// add any pak files in the format pak0.pak pak1.pak, ...
for (i = 0; ; i++)
{
@@ -2074,6 +2067,13 @@ _add_path:
if (!pak) break;
}
+ // add the directory to the search path -- moved here from before the pakX.pak loop -- svdijk.
+ search = (searchpath_t *) Z_Malloc(sizeof(searchpath_t));
+ search->path_id = path_id;
+ q_strlcpy (search->filename, com_gamedir, sizeof(search->filename));
+ search->next = com_searchpaths;
+ com_searchpaths = search;
+
if (!been_here && host_parms->userdir != host_parms->basedir)
{
been_here = true;