diff options
-rw-r--r-- | src/qcommon/files.c | 7 |
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; } |