From 2848006ee22d254ac48de16e3384f366a68c99a5 Mon Sep 17 00:00:00 2001 From: Johan Althoff Date: Tue, 18 Dec 2007 21:26:15 +0000 Subject: fixed server browser sorting on win32. bizar implementation of qsort on win32. --- src/engine/client/ec_srvbrowse.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src/engine/client/ec_srvbrowse.c') diff --git a/src/engine/client/ec_srvbrowse.c b/src/engine/client/ec_srvbrowse.c index 979b6450..d9b3f4ff 100644 --- a/src/engine/client/ec_srvbrowse.c +++ b/src/engine/client/ec_srvbrowse.c @@ -92,28 +92,36 @@ static int client_serverbrowse_sort_compare_ping(const void *ai, const void *bi) { SERVERENTRY *a = serverlist[*(const int*)ai]; SERVERENTRY *b = serverlist[*(const int*)bi]; - return a->info.latency > b->info.latency; + if(a->info.latency > b->info.latency) return 1; + if(a->info.latency < b->info.latency) return -1; + return 0; } static int client_serverbrowse_sort_compare_gametype(const void *ai, const void *bi) { SERVERENTRY *a = serverlist[*(const int*)ai]; SERVERENTRY *b = serverlist[*(const int*)bi]; - return a->info.game_type > b->info.game_type; + if(a->info.game_type > b->info.game_type) return 1; + if(a->info.game_type < b->info.game_type) return -1; + return 0; } static int client_serverbrowse_sort_compare_progression(const void *ai, const void *bi) { SERVERENTRY *a = serverlist[*(const int*)ai]; SERVERENTRY *b = serverlist[*(const int*)bi]; - return a->info.progression > b->info.progression; + if(a->info.progression > b->info.progression) return 1; + if(a->info.progression < b->info.progression) return -1; + return 0; } static int client_serverbrowse_sort_compare_numplayers(const void *ai, const void *bi) { SERVERENTRY *a = serverlist[*(const int*)ai]; SERVERENTRY *b = serverlist[*(const int*)bi]; - return a->info.num_players > b->info.num_players; + if(a->info.num_players > b->info.num_players) return 1; + if(a->info.num_players < b->info.num_players) return -1; + return 0; } static void client_serverbrowse_filter() -- cgit 1.4.1