From: Mark Nauwelaerts Date: Mon, 6 Dec 2010 18:00:28 +0000 (+0100) Subject: jpegparse: try to convert comment tag to UTF-8 X-Git-Tag: RELEASE-0.10.21~279 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=74fb627a087af3d6da3dd6b3c5f8944f630f3f72;p=platform%2Fupstream%2Fgst-plugins-bad.git jpegparse: try to convert comment tag to UTF-8 --- diff --git a/gst/jpegformat/gstjpegparse.c b/gst/jpegformat/gstjpegparse.c index 4ec736c..8dbc511 100644 --- a/gst/jpegformat/gstjpegparse.c +++ b/gst/jpegformat/gstjpegparse.c @@ -562,16 +562,25 @@ gst_jpeg_parse_read_header (GstJpegParse * parse, GstBuffer * buffer) case COM:{ /* read comment and post as tag */ const guint8 *comment = NULL; + const gchar *comm; + const gchar *env_vars[] = { "GST_JPEG_TAG_ENCODING", + "GST_TAG_ENCODING", NULL + }; if (!gst_byte_reader_get_uint16_be (&reader, &size)) goto error; if (!gst_byte_reader_get_data (&reader, size - 2, &comment)) goto error; - if (!parse->priv->tags) - parse->priv->tags = gst_tag_list_new (); - gst_tag_list_add (parse->priv->tags, GST_TAG_MERGE_REPLACE, - GST_TAG_COMMENT, comment, NULL); + comm = (const gchar *) comment; + comm = gst_tag_freeform_string_to_utf8 (comm, size - 2, env_vars); + + if (comm) { + if (!parse->priv->tags) + parse->priv->tags = gst_tag_list_new (); + gst_tag_list_add (parse->priv->tags, GST_TAG_MERGE_REPLACE, + GST_TAG_COMMENT, comm, NULL); + } break; }