aboutsummaryrefslogtreecommitdiffstats
path: root/src/ls.c
diff options
context:
space:
mode:
authorWarren Dukes <warren.dukes@gmail.com>2004-04-13 04:59:57 +0000
committerWarren Dukes <warren.dukes@gmail.com>2004-04-13 04:59:57 +0000
commit1004890e253453faba81126028986f075e5fc5e7 (patch)
tree053e319b9c64d0b4a47bd61311007f01150109a7 /src/ls.c
parent0927c61533d410ffce6c34f279e1280edab0fbd6 (diff)
downloadmpd-1004890e253453faba81126028986f075e5fc5e7.tar.gz
mpd-1004890e253453faba81126028986f075e5fc5e7.tar.xz
mpd-1004890e253453faba81126028986f075e5fc5e7.zip
lots of fsCharset, utf8/ascii converting clean-up and robustness stuff
Also, if fsCharsetToUtf8 can't convert to valid UTF-8, then don't add it to the db, this way clients don't have to worry about weirdness and it will force ppl to convert it. git-svn-id: https://svn.musicpd.org/mpd/trunk@711 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/ls.c')
-rw-r--r--src/ls.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/ls.c b/src/ls.c
index a47f64d74..d461109d5 100644
--- a/src/ls.c
+++ b/src/ls.c
@@ -46,6 +46,7 @@ int lsPlaylists(FILE * fp, char * utf8path) {
struct stat st;
struct dirent * ent;
char * dup;
+ char * utf8;
char s[MAXPATHLEN+1];
List * list = NULL;
ListNode * node = NULL;
@@ -78,8 +79,9 @@ int lsPlaylists(FILE * fp, char * utf8path) {
if(list==NULL) list = makeList(NULL);
dup = strdup(ent->d_name);
dup[suff] = '\0';
- insertInList(list,
- fsCharsetToUtf8(dup),NULL);
+ if((utf8 = fsCharsetToUtf8(dup))) {
+ insertInList(list,utf8,NULL);
+ }
free(dup);
}
}