diff options
Diffstat (limited to 'meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch')
-rwxr-xr-x | meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch deleted file mode 100755 index ef3f75fba..000000000 --- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch +++ /dev/null @@ -1,54 +0,0 @@ -Author: Lyon Wang <b12696@freescale.com> -Date: Thu Oct 9 17:37:43 2014 +0800 - -[id3v2frames] Bug fix for id3demux issue - -Fix the issue that id3 tags utf16 charaters cannot be extreacted in id3demux -when I tried to get the id3v2 tag such as TIT2, TALB etc. it will return extrac -failed. - -Checked in id3v2frame.c, When parse the UTF-16 streams, it used g_convert() to -convert the buffer from UTF-16 to UTF-8, however it will return err that this -conversion is not supported which cause the extraction failed with these UTF-16 -characters. - -In the patch, use g_utf16_to_utf8() instead of g_convert, which can convert the -character format successfully. - -https://bugzilla.gnome.org/show_bug.cgi?id=741144 - -Upstream-Status: Backport [1.5.1] - -Signed-off-by: Lyon Wang <b12696@freescale.com> - -diff --git a/gst-libs/gst/tag/id3v2frames.c b/gst-libs/gst/tag/id3v2frames.c -old mode 100644 -new mode 100755 -index 3785c2a..7b9d8ac ---- a/gst-libs/gst/tag/id3v2frames.c -+++ b/gst-libs/gst/tag/id3v2frames.c -@@ -1057,14 +1057,17 @@ parse_insert_string_field (guint8 encoding, gchar * data, gint data_size, - data_size -= 2; - } - -- field = g_convert (data, data_size, "UTF-8", in_encode, NULL, NULL, NULL); -- -- if (field == NULL || g_utf8_validate (field, -1, NULL) == FALSE) { -- /* As a fallback, try interpreting UTF-16 in the other endianness */ -- if (in_encode == utf16beenc) -- field = g_convert (data, data_size, "UTF-8", utf16leenc, -- NULL, NULL, NULL); -+ if (in_encode == utf16beenc) { -+ gunichar2 *data_utf16; -+ guint i; -+ data_utf16 = (gunichar2 *) data; -+ for (i=0; i<(data_size>>1); i++) { -+ data_utf16[i] = GUINT16_TO_LE (data_utf16[i]); -+ } - } -+ //field = g_convert (data, data_size, "UTF-8", in_encode, NULL, NULL, NULL); -+ field = g_utf16_to_utf8((gunichar2 *)data, (glong)(data_size>>1), NULL, NULL, NULL); -+ - } - - break; |