summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/qcommon/files.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/qcommon/files.c b/src/qcommon/files.c
index 7ea04c12..f18b96a3 100644
--- a/src/qcommon/files.c
+++ b/src/qcommon/files.c
@@ -3038,12 +3038,12 @@ static void FS_ReorderPurePaks( void )
searchpath_t **p_insert_index, // for linked list reordering
**p_previous; // when doing the scan
+ fs_reordered = qfalse;
+
// only relevant when connected to pure server
if ( !fs_numServerPaks )
return;
- fs_reordered = qfalse;
-
p_insert_index = &fs_searchpaths; // we insert in order at the beginning of the list
for ( i = 0 ; i < fs_numServerPaks ; i++ ) {
p_previous = p_insert_index; // track the pointer-to-current-item
@@ -3596,9 +3596,10 @@ qboolean FS_ConditionalRestart(int checksumFeed, qboolean disconnect)
Com_GameRestart(checksumFeed, disconnect);
return qtrue;
}
-
else if(checksumFeed != fs_checksumFeed)
FS_Restart(checksumFeed);
+ else if(fs_numServerPaks && !fs_reordered)
+ FS_ReorderPurePaks();
return qfalse;
}