diff options
-rw-r--r-- | src/network/network_gui.cpp | 3 | ||||
-rw-r--r-- | src/strings.cpp | 8 | ||||
-rw-r--r-- | src/strings_func.h | 2 |
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 |