summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2009-09-13 17:38:07 +0000
committerrubidium <rubidium@openttd.org>2009-09-13 17:38:07 +0000
commit45e3141444323e3bfb959c03686ba81303682833 (patch)
tree9abf5bf9ed0587353c390f92081527b1587885b8
parent734edc178db2d134923ed887b17242bbce55c802 (diff)
downloadopenttd-45e3141444323e3bfb959c03686ba81303682833.tar.xz
(svn r17526) -Codechange: use QSortT instead of qsort for sorting the language list in the network GUI
-rw-r--r--src/network/network_gui.cpp3
-rw-r--r--src/strings.cpp8
-rw-r--r--src/strings_func.h2
3 files changed, 6 insertions, 7 deletions
diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp
index f8ebc382a..eae555130 100644
--- a/src/network/network_gui.cpp
+++ b/src/network/network_gui.cpp
@@ -31,6 +31,7 @@
#include "../sortlist_type.h"
#include "../company_base.h"
#include "../company_func.h"
+#include "../core/sort_func.hpp"
#include "table/strings.h"
#include "../table/sprites.h"
@@ -63,7 +64,7 @@ void SortNetworkLanguages()
}
/* Sort the strings (we don't move 'any' and the 'invalid' one) */
- qsort(&_language_dropdown[1], NETLANG_COUNT - 1, sizeof(StringID), &StringIDSorter);
+ QSortT(_language_dropdown, NETLANG_COUNT - 1, &StringIDSorter);
}
enum {
diff --git a/src/strings.cpp b/src/strings.cpp
index 6c1a655e2..29fbfb41b 100644
--- a/src/strings.cpp
+++ b/src/strings.cpp
@@ -1350,14 +1350,12 @@ const char *GetCurrentLocale(const char *param)
const char *GetCurrentLocale(const char *param);
#endif /* !(defined(WIN32) || defined(__APPLE__)) */
-int CDECL StringIDSorter(const void *a, const void *b)
+int CDECL StringIDSorter(const StringID *a, const StringID *b)
{
- const StringID va = *(const StringID*)a;
- const StringID vb = *(const StringID*)b;
char stra[512];
char strb[512];
- GetString(stra, va, lastof(stra));
- GetString(strb, vb, lastof(strb));
+ GetString(stra, *a, lastof(stra));
+ GetString(strb, *b, lastof(strb));
return strcmp(stra, strb);
}
diff --git a/src/strings_func.h b/src/strings_func.h
index b42f9fff5..bbf1739b1 100644
--- a/src/strings_func.h
+++ b/src/strings_func.h
@@ -100,7 +100,7 @@ extern DynamicLanguages _dynlang; // defined in strings.cpp
bool ReadLanguagePack(int index);
void InitializeLanguagePacks();
-int CDECL StringIDSorter(const void *a, const void *b);
+int CDECL StringIDSorter(const StringID *a, const StringID *b);
/** Key comparison function for std::map */
struct StringIDCompare