gst/gstelement.c: Small tweak, element in ASYNC remains ASYNC.
authorWim Taymans <wim.taymans@gmail.com>
Fri, 30 Sep 2005 08:29:02 +0000 (08:29 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Fri, 30 Sep 2005 08:29:02 +0000 (08:29 +0000)
Original commit message from CVS:
* gst/gstelement.c: (gst_element_set_state),
(gst_element_change_state):
Small tweak, element in ASYNC remains ASYNC.

ChangeLog
gst/gstelement.c

index b44de284e2096a44084aa8c1cb23330a5a24e019..f98c3a219a4ee4c36bce571f246e12f5ccd62d39 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-09-30  Wim Taymans  <wim@fluendo.com>
+
+       * gst/gstelement.c: (gst_element_set_state),
+       (gst_element_change_state):
+       Small tweak, element in ASYNC remains ASYNC.
+
 2005-09-30  Wim Taymans  <wim@fluendo.com>
 
        * gst/base/gstbasesink.c: (gst_base_sink_change_state):
index 6a368ddfb6d3e3c4c657e640a0308ff73f7216c2..aeeb6eb3d705fbfbcdf4cbada2f36cdc82cdf830 100644 (file)
@@ -1854,6 +1854,10 @@ gst_element_set_state (GstElement * element, GstState state)
      * the STATE_LOCK */
     gst_element_commit_state (element);
     gst_element_lost_state (element);
+    if (state == GST_STATE_PENDING (element)) {
+      GST_STATE_UNLOCK (element);
+      return GST_STATE_CHANGE_ASYNC;
+    }
   }
 
   /* start with the current state */
@@ -2094,7 +2098,6 @@ was_ok:
     else
       return GST_STATE_CHANGE_SUCCESS;
   }
-
 }
 
 /**