diff options
author | Christopher Schwarz <lakitu7@gmail.com> | 2009-10-16 21:39:02 +0000 |
---|---|---|
committer | Tim Angus <tim@ngus.net> | 2013-01-03 00:16:52 +0000 |
commit | b1d0af1e090547ec3693ceddac2171ae6afd4427 (patch) | |
tree | 7effa383e64a83a5bdb8166f33c32f9cd6fe57a6 /src | |
parent | 85b7a9aaeba95a0564d26be1f25c94ebb6c9e6c6 (diff) |
* (bug 4300) Sort cvars in Server Info menu (Rezyn)
Diffstat (limited to 'src')
-rw-r--r-- | src/ui/ui_main.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/ui/ui_main.c b/src/ui/ui_main.c index 2937cbc2..c88363ce 100644 --- a/src/ui/ui_main.c +++ b/src/ui/ui_main.c @@ -385,6 +385,15 @@ serverStatusCvar_t serverStatusCvars[] = { UI_SortServerStatusInfo ================== */ + +static int UI_SortServerStatusCompare( const void *a, const void *b ) +{ + const char **la = (const char **)a; + const char **lb = (const char **)b; + + return strcmp( la[0], lb[0] ); +} + static void UI_SortServerStatusInfo( serverStatusInfo_t *info ) { int i, j, index; @@ -417,6 +426,11 @@ static void UI_SortServerStatusInfo( serverStatusInfo_t *info ) } } } + + // sort remaining cvars + qsort( info->lines + index, + info->numLines - index, sizeof( info->lines[ 0 ] ), + UI_SortServerStatusCompare ); } /* @@ -477,6 +491,8 @@ static int UI_GetServerStatusInfo( const char *serverAddress, serverStatusInfo_t break; } + UI_SortServerStatusInfo( info ); + // get the player list if( info->numLines < MAX_SERVERSTATUS_LINES - 3 ) { @@ -550,7 +566,6 @@ static int UI_GetServerStatusInfo( const char *serverAddress, serverStatusInfo_t } } - UI_SortServerStatusInfo( info ); return qtrue; } |