guint16 xd, yd;
guint8 unit, xt, yt;
- if (seg->size < 14) /* length of interesting data in APP0 */
+ if (seg->size < 6) /* less than 6 means no id string */
return FALSE;
gst_byte_reader_init (&reader, seg->data + seg->offset, seg->size);
return TRUE;
}
- return FALSE;
+ GST_DEBUG_OBJECT (parse, "Unhandled app0: %s", id_str);
+
+ return TRUE;
}
/* *INDENT-OFF* */
const guint8 *data;
gint i;
+ if (seg->size < 6) /* less than 6 means no id string */
+ return FALSE;
+
gst_byte_reader_init (&reader, seg->data + seg->offset, seg->size);
gst_byte_reader_skip_unchecked (&reader, 2);
gst_tag_list_unref (tags);
} else {
GST_INFO_OBJECT (parse, "failed to parse %s: %s", id_str, data);
+ return FALSE;
}
}
return TRUE;
}
+ GST_DEBUG_OBJECT (parse, "Unhandled app1: %s", id_str);
+
return TRUE;
}
const gchar *id_str;
guint8 transform;
- if (seg->size < 12) /* length of interesting data in APP14 */
+ if (seg->size < 6) /* less than 6 means no id string */
return FALSE;
gst_byte_reader_init (&reader, seg->data + seg->offset, seg->size);
if (!gst_byte_reader_get_string_utf8 (&reader, &id_str))
return FALSE;
- if (!g_str_has_prefix (id_str, "Adobe"))
- return FALSE;
+ if (!g_str_has_prefix (id_str, "Adobe")) {
+ GST_DEBUG_OBJECT (parse, "Unhandled app14: %s", id_str);
+ return TRUE;
+ }
/* skip version and flags */
if (!gst_byte_reader_skip (&reader, 6))
return FALSE;
comment = get_utf8_from_data (data, size);
+ if (!comment)
+ return FALSE;
- if (comment) {
- GST_INFO_OBJECT (parse, "comment found: %s", comment);
- gst_tag_list_add (get_tag_list (parse), GST_TAG_MERGE_REPLACE,
- GST_TAG_COMMENT, comment, NULL);
- g_free (comment);
- }
+ GST_INFO_OBJECT (parse, "comment found: %s", comment);
+ gst_tag_list_add (get_tag_list (parse), GST_TAG_MERGE_REPLACE,
+ GST_TAG_COMMENT, comment, NULL);
+ g_free (comment);
return TRUE;
}
case GST_JPEG_MARKER_COM:
if (!gst_jpeg_parse_com (parse, &seg)) {
GST_ELEMENT_WARNING (parse, STREAM, FORMAT,
- ("Failed to parse com segment"), (NULL));
+ ("Failed to parse com segment"), ("Invalid data"));
}
break;
case GST_JPEG_MARKER_APP0:
if (!gst_jpeg_parse_app0 (parse, &seg)) {
GST_ELEMENT_WARNING (parse, STREAM, FORMAT,
- ("Failed to parse app0 segment"), (NULL));
+ ("Failed to parse app0 segment"), ("Invalid data"));
}
break;
case GST_JPEG_MARKER_APP1:
if (!gst_jpeg_parse_app1 (parse, &seg)) {
GST_ELEMENT_WARNING (parse, STREAM, FORMAT,
- ("Failed to parse app1 segment"), (NULL));
+ ("Failed to parse app1 segment"), ("Invalid data"));
}
break;
case GST_JPEG_MARKER_APP14:
if (!gst_jpeg_parse_app14 (parse, &seg)) {
GST_ELEMENT_WARNING (parse, STREAM, FORMAT,
- ("Failed to parse app14 segment"), (NULL));
+ ("Failed to parse app14 segment"), ("Invalid data"));
}
break;
case GST_JPEG_MARKER_DHT: