mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 10:11:08 +00:00
It's absolute fun if you don't find this. If an element claims a successful state change but did not actually change ...
Original commit message from CVS: It's absolute fun if you don't find this. If an element claims a successful state change but did not actually change its state it is broken and the program deserves to crash. And hard. Can you hear I'm annoyed?
This commit is contained in:
parent
900066617c
commit
30267f6a64
1 changed files with 2 additions and 9 deletions
|
@ -2261,15 +2261,8 @@ gst_element_set_state (GstElement *element, GstElementState state)
|
|||
case GST_STATE_SUCCESS:
|
||||
/* Last thing we do is verify that a successful state change really
|
||||
* did change the state... */
|
||||
if (GST_STATE (element) != curpending) {
|
||||
GST_DEBUG_ELEMENT (GST_CAT_STATES, element,
|
||||
"element claimed state-change success,"
|
||||
"but state didn't change %s, %s <-> %s",
|
||||
gst_element_state_get_name (GST_STATE (element)),
|
||||
gst_element_state_get_name (GST_STATE_PENDING (element)),
|
||||
gst_element_state_get_name (curpending));
|
||||
return GST_STATE_FAILURE;
|
||||
}
|
||||
/* if it did not, this is an error - fix the element that does this */
|
||||
g_assert (GST_STATE (element) == curpending);
|
||||
break;
|
||||
default:
|
||||
/* somebody added a GST_STATE_ and forgot to do stuff here ! */
|
||||
|
|
Loading…
Reference in a new issue