2004-07-22 Benjamin Otte <otte@gnome.org>
+ * gst/gstelementfactory.c: (gst_element_register):
+ set the factory in the class struct, so gst_element_get_factory
+ actually works
+ * gst/parse/grammar.y:
+ set element to playing when it gets unlocked as we can't rely on the
+ bin state - all elements in the bin state might still be locked in
+ NULL)
+
+2004-07-22 Benjamin Otte <otte@gnome.org>
+
* gst/gstelement.c: (gst_element_set_state_func):
make this a static function
factory->padtemplates = g_list_copy (klass->padtemplates);
g_list_foreach (factory->padtemplates, (GFunc) gst_object_ref, NULL);
factory->numpadtemplates = klass->numpadtemplates;
+ klass->elementfactory = factory;
/* special stuff for URI handling */
if (g_type_is_a (type, GST_TYPE_URI_HANDLER)) {
GST_CAT_DEBUG (GST_CAT_PIPELINE, "trying to sync state of element with parent");
/* FIXME: it would be nice if we can figure out why it failed
(e.g. caps nego) and give an error about that instead. */
- if (!gst_element_sync_state_with_parent (element))
+ if (gst_element_set_state (element, GST_STATE_PLAYING) == GST_STATE_FAILURE)
GST_ELEMENT_ERROR (element, CORE, STATE_CHANGE, (NULL), (NULL));
}
} else {