summaryrefslogtreecommitdiffstats
path: root/gst/avi/gstavimux.c
diff options
context:
space:
mode:
authorStefan Kost <ensonic@users.sourceforge.net>2008-12-15 15:59:53 +0000
committerStefan Kost <ensonic@users.sourceforge.net>2008-12-15 15:59:53 +0000
commit8add29398d86b9daf4d03c1c1d9d808c009c1309 (patch)
tree1f7c93e628e49ccade7f451695d3b5b2b0fdf626 /gst/avi/gstavimux.c
parent49ad7ace92202ad91024ea3efe60ff96f414005b (diff)
gst/avi/gstavimux.c: Instead of filtering wrongly just use the mergemode. Applications is use KEEP_ALL if they want t...
Original commit message from CVS: * gst/avi/gstavimux.c: Instead of filtering wrongly just use the mergemode. Applications is use KEEP_ALL if they want to supress tag-events. Fixes #563221 for avi for real (I hope). Everyone chime in, before I fix the others.
Diffstat (limited to 'gst/avi/gstavimux.c')
-rw-r--r--gst/avi/gstavimux.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/gst/avi/gstavimux.c b/gst/avi/gstavimux.c
index 24adda9b..697ae9ee 100644
--- a/gst/avi/gstavimux.c
+++ b/gst/avi/gstavimux.c
@@ -1687,20 +1687,14 @@ gst_avi_mux_handle_event (GstPad * pad, GstEvent * event)
avimux = GST_AVI_MUX (gst_pad_get_parent (pad));
switch (GST_EVENT_TYPE (event)) {
- case GST_EVENT_TAG:
- if (gst_tag_setter_get_tag_merge_mode (GST_TAG_SETTER (avimux)) !=
- GST_TAG_MERGE_REPLACE_ALL) {
- GstTagList *list;
- gst_event_parse_tag (event, &list);
- if (avimux->tags) {
- gst_tag_list_insert (avimux->tags, list, GST_TAG_MERGE_PREPEND);
- } else {
- avimux->tags = gst_tag_list_copy (list);
- }
- } else {
- GST_DEBUG ("skipping tag-event");
- }
+ case GST_EVENT_TAG:{
+ GstTagList *list;
+
+ gst_event_parse_tag (event, &list);
+ avimux->tags = gst_tag_list_merge (avimux->tags, list,
+ gst_tag_setter_get_tag_merge_mode (GST_TAG_SETTER (avimux)));
break;
+ }
default:
break;
}