aboutsummaryrefslogtreecommitdiffstats
path: root/src/song.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/song.c')
-rw-r--r--src/song.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/song.c b/src/song.c
index 9d2a09e54..c1f465177 100644
--- a/src/song.c
+++ b/src/song.c
@@ -59,7 +59,9 @@ Song * newSong(char * utf8url, SONG_TYPE type) {
if(song->type == SONG_TYPE_FILE) {
InputPlugin * plugin;
if((plugin = isMusic(utf8url,&(song->mtime)))) {
- song->tag = plugin->tagDupFunc(utf8url);
+ song->tag = plugin->tagDupFunc(
+ rmp2amp(utf8ToFsCharset(utf8url)));
+ if(song->tag) validateUtf8Tag(song->tag);
}
if(!song->tag || song->tag->time<0) {
freeSong(song);
@@ -267,7 +269,9 @@ int updateSongInfo(Song * song) {
song->tag = NULL;
if((plugin = isMusic(utf8url,&(song->mtime)))) {
- song->tag = plugin->tagDupFunc(utf8url);
+ song->tag = plugin->tagDupFunc(
+ rmp2amp(utf8ToFsCharset(utf8url)));
+ if(song->tag) validateUtf8Tag(song->tag);
}
if(!song->tag || song->tag->time<0) return -1;
else addSongToTables(song);