X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/5464a25ad98e1799e29eb2263ad1075cda627896..f9635e06947ec6bc61c7977e7a3f9dba2c43d784:/server/rescan.c diff --git a/server/rescan.c b/server/rescan.c index 890e3fe..b9be72d 100644 --- a/server/rescan.c +++ b/server/rescan.c @@ -50,6 +50,7 @@ #include "trackdb.h" #include "trackdb-int.h" #include "trackname.h" +#include "unicode.h" static DB_TXN *global_tid; @@ -151,6 +152,11 @@ static void rescan_collection(const struct collection *c) { error(0, "cannot convert track path to UTF-8: %s", path); continue; } + /* We use NFC track names */ + if(!(track = utf8_compose_canon(track, strlen(track), 0))) { + error(0, "cannot convert track path to NFC: %s", path); + continue; + } D(("track %s", track)); /* only tracks with a known player are admitted */ for(n = 0; (n < config->player.n