dirvec, songvec: sort using g_utf8_collate()

Path names in the directory and song structs are always encoded in
UTF-8.  Don't use strcmp(), it cannot handle UTF-8 characters
properly.  Use GLib's UTF-8 aware g_utf8_collate() function for that.
This commit is contained in:
Max Kellermann 2009-01-15 00:09:18 +01:00
parent b7fe09fa52
commit 4847bbaad3
2 changed files with 2 additions and 2 deletions

View File

@ -19,7 +19,7 @@ static int dirvec_cmp(const void *d1, const void *d2)
{
const struct directory *a = ((const struct directory * const *)d1)[0];
const struct directory *b = ((const struct directory * const *)d2)[0];
return strcmp(a->path, b->path);
return g_utf8_collate(a->path, b->path);
}
void dirvec_init(void)

View File

@ -14,7 +14,7 @@ static int songvec_cmp(const void *s1, const void *s2)
{
const struct song *a = ((const struct song * const *)s1)[0];
const struct song *b = ((const struct song * const *)s2)[0];
return strcmp(a->url, b->url);
return g_utf8_collate(a->url, b->url);
}
static size_t sv_size(const struct songvec *sv)