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

Reply via email to