[gstreamer-bugs] [Bug 356910] New: Basesrc gst_base_src_activate_push not calling base_src_stop in deactivate

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Wed Sep 20 08:01:52 PDT 2006


Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=356910
 GStreamer | gstreamer (core) | Ver: HEAD CVS

           Summary: Basesrc gst_base_src_activate_push not calling
                    base_src_stop in deactivate
           Product: GStreamer
           Version: HEAD CVS
          Platform: Other
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: hexa00 at gmail.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: Unspecified
   GNOME milestone: Unspecified


I found this after playing with udpsrc : while having udpsrc always in the
playing state , deactivating and activating it's push mode. The basesrc  would
not call the start fonction after one deactivate had been called. This was due
to the IS_STARTED  flag that wasn't reset since base_src_stop wasn't called.

So here's a patch to add a base_src_stop call in the gst_base_src_activate_push
fonction on activate == false. This should be in line with the logic to have a
stop called each time a start is , and not change the behavior of gstreamer...
note that   gst_base_src_activate_pull calls it...

Also important is that I call this after gst_base_src_deactivate this is due to
gst_base_src_deactivate calling the unlock function of the derived class and
thus permitting the loop fonction to return (in the case of udpsrc this
fonction sends a stop command). Without this it will dealock.

Thanks

Antoine


-- 
Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.




More information about the Gstreamer-bugs mailing list