diff --git a/gst/gsttoc.c b/gst/gsttoc.c index 5a480b883d..b6170099ab 100644 --- a/gst/gsttoc.c +++ b/gst/gsttoc.c @@ -226,9 +226,7 @@ gst_toc_structure_new (GstTagList * tags, GstStructure * info) ret = gst_structure_new_id_empty (GST_QUARK (TOC)); if (tags != NULL) { - // FIXME: don't use GST_TYPE_STRUCTURE for taglist - gst_structure_id_set (ret, GST_QUARK (TAGS), GST_TYPE_STRUCTURE, tags, - NULL); + gst_structure_id_set (ret, GST_QUARK (TAGS), GST_TYPE_TAG_LIST, tags, NULL); } if (info != NULL) { @@ -252,9 +250,7 @@ gst_toc_entry_structure_new (GstTocEntryType type, const gchar * uid, gst_structure_id_set (ret, GST_QUARK (UID), G_TYPE_STRING, uid, NULL); if (tags != NULL) { - // FIXME: taglist type - gst_structure_id_set (ret, GST_QUARK (TAGS), GST_TYPE_STRUCTURE, tags, - NULL); + gst_structure_id_set (ret, GST_QUARK (TAGS), GST_TYPE_TAG_LIST, tags, NULL); } if (info != NULL) { @@ -365,12 +361,12 @@ gst_toc_entry_from_structure (const GstStructure * entry, guint level) ret->subentries = g_list_reverse (ret->subentries); } - if (gst_structure_id_has_field_typed (entry, - GST_QUARK (TAGS), GST_TYPE_STRUCTURE)) { + if (gst_structure_id_has_field_typed (entry, GST_QUARK (TAGS), + GST_TYPE_TAG_LIST)) { val = gst_structure_id_get_value (entry, GST_QUARK (TAGS)); - if (G_LIKELY (GST_IS_TAG_LIST (gst_value_get_structure (val)))) { - list = gst_tag_list_copy (GST_TAG_LIST (gst_value_get_structure (val))); + if (G_LIKELY (GST_IS_TAG_LIST (g_value_get_boxed (val)))) { + list = gst_tag_list_copy (GST_TAG_LIST (g_value_get_boxed (val))); gst_tag_list_free (ret->tags); ret->tags = list; } @@ -449,12 +445,12 @@ __gst_toc_from_structure (const GstStructure * toc) ret->entries = g_list_reverse (ret->entries); } - if (gst_structure_id_has_field_typed (toc, - GST_QUARK (TAGS), GST_TYPE_STRUCTURE)) { + if (gst_structure_id_has_field_typed (toc, GST_QUARK (TAGS), + GST_TYPE_TAG_LIST)) { val = gst_structure_id_get_value (toc, GST_QUARK (TAGS)); - if (G_LIKELY (GST_IS_TAG_LIST (gst_value_get_structure (val)))) { - list = gst_tag_list_copy (GST_TAG_LIST (gst_value_get_structure (val))); + if (G_LIKELY (GST_IS_TAG_LIST (g_value_get_boxed (val)))) { + list = gst_tag_list_copy (GST_TAG_LIST (g_value_get_boxed (val))); gst_tag_list_free (ret->tags); ret->tags = list; }