Skip to content

Commit

Permalink
gst/gstelementfactory.c: set the factory in the class struct, so gst_…
Browse files Browse the repository at this point in the history
…element_get_factory actually works

Original commit message from CVS:
* 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)
  • Loading branch information
benjamin-otte committed Jul 22, 2004
1 parent 66786dc commit 9574c78
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 1 deletion.
10 changes: 10 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
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):
Expand Down
1 change: 1 addition & 0 deletions gst/gstelementfactory.c
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ gst_element_register (GstPlugin * plugin, const gchar * name, guint rank,
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)) {
Expand Down
2 changes: 1 addition & 1 deletion gst/parse/grammar.y
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ gst_parse_element_lock (GstElement *element, gboolean lock)
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 {
Expand Down

0 comments on commit 9574c78

Please sign in to comment.