diff options
Diffstat (limited to 'packages/gnome-mplayer/files/non-utf8-id3-fallback.patch')
-rw-r--r-- | packages/gnome-mplayer/files/non-utf8-id3-fallback.patch | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/packages/gnome-mplayer/files/non-utf8-id3-fallback.patch b/packages/gnome-mplayer/files/non-utf8-id3-fallback.patch new file mode 100644 index 0000000000..3b13bf0015 --- /dev/null +++ b/packages/gnome-mplayer/files/non-utf8-id3-fallback.patch @@ -0,0 +1,22 @@ +I found that on ARM/glibc 2.5/glib 2.12.something test in strip_unicode() doesn't +really catch invalid utf-8 chars. Also, let's tell user where problem lies straight. + +Paul Sokolovsky <pmiscml@gmail.com> +--- a/src/thread.c.org 2007-12-24 00:10:15.000000000 +0200 ++++ a/src/thread.c 2008-01-04 22:04:30.000000000 +0200 +@@ -349,13 +349,11 @@ + //g_idle_add(set_media_info, idledata); + utf8name = g_locale_to_utf8(parse[name],-1, NULL, NULL,NULL); + if (utf8name == NULL) { +- strip_unicode(parse[name],strlen(parse[name])); +- utf8name = g_strdup(parse[name]); ++ utf8name = g_strdup("<cannot convert to utf-8>"); + } + utf8artist = g_locale_to_utf8(parse[artist],-1, NULL, NULL,NULL); + if (utf8artist == NULL) { +- strip_unicode(parse[artist],strlen(parse[artist])); +- utf8artist = g_strdup(parse[artist]); ++ utf8artist = g_strdup("<cannot convert to utf-8>"); + } + + message = g_markup_printf_escaped(_("<small>\n<b>Title:</b>\t%s\n<b>Artist:</b>\t%s\n<b>File:</b>\t%s\n</small>"),utf8name,utf8artist,idledata->info); |