Index: src/playlist.c =================================================================== --- src/playlist.c (revision 15986) +++ src/playlist.c (working copy) @@ -1105,10 +1105,9 @@ idx = from_index; uris = xfmedia_uri_list_extract_uris((const gchar *)data->data); for(l = uris; l; l = l->next) { - gchar *filename = l->data, *title_utf8; + gchar *filename, *title_utf8; - if(!g_ascii_strncasecmp(filename, "file://", 7)) - filename += 7; + filename = g_filename_from_uri(l->data, NULL, NULL); DBG("adding '%s'", filename); if(g_file_test(filename, G_FILE_TEST_IS_DIR)) { @@ -1131,6 +1130,7 @@ num_added++; } + g_free(filename); } if(uris) { if(from_index == -1) {