dvdspu: Forward the still frame event downstream
authorJan Schmidt <thaytan@noraisin.net>
Sun, 15 Nov 2009 03:21:56 +0000 (03:21 +0000)
committerJan Schmidt <thaytan@noraisin.net>
Wed, 18 Nov 2009 01:58:34 +0000 (01:58 +0000)
Forward still-frame events downstream so elements like deinterlace
can use them.

gst/dvdspu/gstdvdspu.c

index 1f607e82c4693ca1ec44b8bc16a152e010690cb9..0d7684ec267fe1e497e2713cb1f93129298487f0 100644 (file)
@@ -424,6 +424,9 @@ gst_dvd_spu_video_event (GstPad * pad, GstEvent * event)
       if (strcmp (event_type, "dvd-still") == 0) {
         gboolean in_still;
 
+        /* Forward the event before handling */
+        res = gst_pad_event_default (pad, event);
+
         if (gst_structure_get_boolean (structure, "still-state", &in_still)) {
           GstBuffer *to_push = NULL;
 
@@ -451,8 +454,6 @@ gst_dvd_spu_video_event (GstPad * pad, GstEvent * event)
           if (to_push)
             gst_pad_push (dvdspu->srcpad, to_push);
         }
-        gst_event_unref (event);
-        res = TRUE;
       } else {
         GST_DEBUG_OBJECT (dvdspu,
             "DVD event of type %s on video pad", event_type);