Not only if the base class told us, but also if one of our own elements did.
https://bugzilla.gnome.org/show_bug.cgi?id=756611
break;
}
+ if (ret == GST_STATE_CHANGE_NO_PREROLL)
+ do_async_done (playbin);
+
return ret;
/* ERRORS */
ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
if (ret == GST_STATE_CHANGE_FAILURE)
goto setup_failed;
- else if (ret == GST_STATE_CHANGE_NO_PREROLL)
- do_async_done (decoder);
switch (transition) {
case GST_STATE_CHANGE_READY_TO_PAUSED:
default:
break;
}
+
+ if (ret == GST_STATE_CHANGE_NO_PREROLL)
+ do_async_done (decoder);
+
return ret;
/* ERRORS */