[Bug 686723] New: basesrc: generic/states test in -base now hangs with appsrc

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Oct 23 12:55:16 PDT 2012


https://bugzilla.gnome.org/show_bug.cgi?id=686723
  GStreamer | gstreamer (core) | git

           Summary: basesrc: generic/states test in -base now hangs with
                    appsrc
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: NEW
          Severity: blocker
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: t.i.m at zen.co.uk
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


The -base generic/states test now hangs for appsrc.

I suspect this change may have caused this:


commit f688d4d8a769f064b500014d39a820653a48b9e8
Author: Wim Taymans <wim.taymans at collabora.co.uk>
Date:   Tue Oct 9 15:31:19 2012 +0200

    basesrc: retrieve the result from start_complete

    gst_base_src_start_complete() can fail when the thread could not be
    started, for example. Make sure it causes the state change to fail by
    retrieving the result from _start_complete().

diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c
index fef9b25..679a33d 100644
--- a/libs/gst/base/gstbasesrc.c
+++ b/libs/gst/base/gstbasesrc.c
@@ -3115,8 +3115,12 @@ gst_base_src_start (GstBaseSrc * basesrc)
   if (!result)
     goto could_not_start;

-  if (!gst_base_src_is_async (basesrc))
+  if (!gst_base_src_is_async (basesrc)) {
     gst_base_src_start_complete (basesrc, GST_FLOW_OK);
+    /* not really waiting here, we call this to get the result
+     * from the start_complete call */
+    result = gst_base_src_start_wait (basesrc) == GST_FLOW_OK;
+  }

   return result;

-- 
Configure bugmail: https://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