This is an automated email from the git hooks/post-receive script. smcv pushed a commit to tag 1.51 in repository iortcw.
commit 89bd343e1efde5730e860e327ad00082e414cacc Author: MAN-AT-ARMS <m4n4t4...@gmail.com> Date: Sat Jun 3 10:52:21 2017 -0400 All: Fix filtering favorite servers Unused in SP --- MP/code/ui/ui_main.c | 64 ++++++++++++++++++++++++++++++++++++---------------- SP/code/ui/ui_main.c | 44 +++++++++++++++++++++++------------- 2 files changed, 73 insertions(+), 35 deletions(-) diff --git a/MP/code/ui/ui_main.c b/MP/code/ui/ui_main.c index 26e367b..368c6f5 100644 --- a/MP/code/ui/ui_main.c +++ b/MP/code/ui/ui_main.c @@ -5412,6 +5412,12 @@ static void UI_BuildServerDisplayList( int force ) { // get the ping for this server ping = trap_LAN_GetServerPing(lanSource, i); if (ping > 0 || ui_netSource.integer == UIAS_FAVORITES) { + // Remove favorite servers so they do not appear multiple times + // or appear when the cached server info was not filtered out + // but the new server info is filtered out. + if (ui_netSource.integer == UIAS_FAVORITES) { + UI_RemoveServerFromDisplayList(i); + } trap_LAN_GetServerInfo(lanSource, i, info, MAX_STRING_CHARS); @@ -5420,7 +5426,9 @@ static void UI_BuildServerDisplayList( int force ) { if ( ui_browserShowEmpty.integer == 0 ) { if ( clients == 0 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5428,7 +5436,9 @@ static void UI_BuildServerDisplayList( int force ) { if ( ui_browserShowFull.integer == 0 ) { maxClients = atoi( Info_ValueForKey( info, "sv_maxclients" ) ); if ( clients == maxClients ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5438,10 +5448,14 @@ static void UI_BuildServerDisplayList( int force ) { friendlyFire = atoi( Info_ValueForKey( info, "friendlyFire" ) ); if ( friendlyFire && ui_browserShowFriendlyFire.integer == 2 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; - } else if ( !friendlyFire && ui_browserShowFriendlyFire.integer == 1 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } else if ( !friendlyFire && ui_browserShowFriendlyFire.integer == 1 ) { + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5450,7 +5464,9 @@ static void UI_BuildServerDisplayList( int force ) { if ( ui_browserShowMaxlives.integer == 0 ) { maxlives = atoi( Info_ValueForKey( info, "maxlives" ) ); if ( maxlives ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5459,7 +5475,9 @@ static void UI_BuildServerDisplayList( int force ) { if ( ui_browserShowTourney.integer == 0 ) { tourney = atoi( Info_ValueForKey( info, "tourney" ) ); if ( tourney ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5469,10 +5487,14 @@ static void UI_BuildServerDisplayList( int force ) { punkbuster = atoi( Info_ValueForKey( info, "punkbuster" ) ); if ( punkbuster && ui_browserShowPunkBuster.integer == 2 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; - } else if ( !punkbuster && ui_browserShowPunkBuster.integer == 1 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } else if ( !punkbuster && ui_browserShowPunkBuster.integer == 1 ) { + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5481,10 +5503,14 @@ static void UI_BuildServerDisplayList( int force ) { antilag = atoi( Info_ValueForKey( info, "g_antilag" ) ); if ( antilag && ui_browserShowAntilag.integer == 2 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; - } else if ( !antilag && ui_browserShowAntilag.integer == 1 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } else if ( !antilag && ui_browserShowAntilag.integer == 1 ) { + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5492,21 +5518,21 @@ static void UI_BuildServerDisplayList( int force ) { if ( uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum != -1 ) { game = atoi( Info_ValueForKey( info, "gametype" ) ); if ( game != uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } if ( ui_serverFilterType.integer > 0 ) { if ( Q_stricmp( Info_ValueForKey( info, "game" ), serverFilters[ui_serverFilterType.integer].basedir ) != 0 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } - // make sure we never add a favorite server twice - if ( ui_netSource.integer == UIAS_FAVORITES ) { - UI_RemoveServerFromDisplayList( i ); - } // insert the server into the list UI_BinaryServerInsertion( i ); // done with this server diff --git a/SP/code/ui/ui_main.c b/SP/code/ui/ui_main.c index e35489e..d48c724 100644 --- a/SP/code/ui/ui_main.c +++ b/SP/code/ui/ui_main.c @@ -5319,6 +5319,12 @@ static void UI_BuildServerDisplayList( int force ) { // get the ping for this server ping = trap_LAN_GetServerPing(lanSource, i); if (ping > 0 || ui_netSource.integer == UIAS_FAVORITES) { + // Remove favorite servers so they do not appear multiple times + // or appear when the cached server info was not filtered out + // but the new server info is filtered out. + if (ui_netSource.integer == UIAS_FAVORITES) { + UI_RemoveServerFromDisplayList(i); + } trap_LAN_GetServerInfo(lanSource, i, info, MAX_STRING_CHARS); @@ -5327,7 +5333,9 @@ static void UI_BuildServerDisplayList( int force ) { if ( ui_browserShowEmpty.integer == 0 ) { if ( clients == 0 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } @@ -5335,30 +5343,34 @@ static void UI_BuildServerDisplayList( int force ) { if ( ui_browserShowFull.integer == 0 ) { maxClients = atoi( Info_ValueForKey( info, "sv_maxclients" ) ); if ( clients == maxClients ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } - /* // NERVE - SMF - comment out for now, not recognizing "gametype" properly + + /* + // NERVE - SMF - comment out for now, not recognizing "gametype" properly if (uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum != -1) { - game = atoi(Info_ValueForKey(info, "gametype")); - if (game != uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); - continue; - } + game = atoi(Info_ValueForKey(info, "gametype")); + if (game != uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum) { + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } + continue; + } } */ if ( ui_serverFilterType.integer > 0 ) { if ( Q_stricmp( Info_ValueForKey( info, "game" ), serverFilters[ui_serverFilterType.integer].basedir ) != 0 ) { - trap_LAN_MarkServerVisible(lanSource, i, qfalse); + if (ping > 0) { + trap_LAN_MarkServerVisible(lanSource, i, qfalse); + } continue; } } - // make sure we never add a favorite server twice - if ( ui_netSource.integer == UIAS_FAVORITES ) { - UI_RemoveServerFromDisplayList( i ); - } // insert the server into the list UI_BinaryServerInsertion( i ); // done with this server @@ -5373,10 +5385,10 @@ static void UI_BuildServerDisplayList( int force ) { // if there were no servers visible for ping updates if ( !visible ) { - // UI_StopServerRefresh(); - // uiInfo.serverStatus.nextDisplayRefresh = 0; +// UI_StopServerRefresh(); +// uiInfo.serverStatus.nextDisplayRefresh = 0; } - //#endif // #ifdef MISSIONPACK +//#endif // #ifdef MISSIONPACK } typedef struct -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/iortcw.git _______________________________________________ Pkg-games-commits mailing list Pkg-games-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits