Merge pull request #1083 from apartfromtime/Case-insensitive-sort-on-player-skin-names

Case insensitive sort for player skins
This commit is contained in:
Yamagi 2024-02-03 16:03:32 +01:00 committed by GitHub
commit cc176da74e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 10 additions and 1 deletions

View File

@ -5650,7 +5650,7 @@ PlayerModelList(void)
}
// sort skin names alphabetically
qsort(s_skinnames[mdl].data, s_skinnames[mdl].num, sizeof(char**), Q_sort_strcomp);
qsort(s_skinnames[mdl].data, s_skinnames[mdl].num, sizeof(char**), Q_sort_stricmp);
// at this point we have a valid player model
s = (char*)malloc(MAX_DISPLAYNAME);

View File

@ -333,6 +333,9 @@ int Q_strlcat(char *dst, const char *src, int size);
/* Unicode wrappers that also make sure it's a regular file around fopen(). */
FILE *Q_fopen(const char *file, const char *mode);
/* Comparator function for qsort(), compares case-insensitive strings. */
int Q_sort_stricmp(const void *s1, const void *s2);
/* Comparator function for qsort(), compares strings. */
int Q_sort_strcomp(const void *s1, const void *s2);

View File

@ -1188,6 +1188,12 @@ FILE *Q_fopen(const char *file, const char *mode)
}
#endif
int
Q_sort_stricmp(const void *s1, const void *s2)
{
return Q_stricmp(*(char**)s1, *(char**)s2);
}
int
Q_sort_strcomp(const void *s1, const void *s2)
{