summaryrefslogtreecommitdiff
path: root/gst/autoplug/gststaticautoplugrender.c
diff options
context:
space:
mode:
Diffstat (limited to 'gst/autoplug/gststaticautoplugrender.c')
-rw-r--r--gst/autoplug/gststaticautoplugrender.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/gst/autoplug/gststaticautoplugrender.c b/gst/autoplug/gststaticautoplugrender.c
index 0c71fffc08..d4c9ad1a54 100644
--- a/gst/autoplug/gststaticautoplugrender.c
+++ b/gst/autoplug/gststaticautoplugrender.c
@@ -95,6 +95,9 @@ plugin_init (GModule *module, GstPlugin *plugin)
if (factory != NULL) {
gst_plugin_add_feature (plugin, GST_PLUGIN_FEATURE (factory));
}
+ else {
+ g_warning ("could not register autoplugger: staticrender");
+ }
return TRUE;
}
@@ -232,8 +235,6 @@ gst_autoplug_pads_autoplug (GstElement *src, GstElement *sink)
GST_ELEMENT_NAME(src), GST_ELEMENT_NAME(sink));
g_signal_connect (G_OBJECT(src),"new_pad",
G_CALLBACK (gst_autoplug_pads_autoplug_func), sink);
- g_signal_connect (G_OBJECT(src),"new_ghost_pad",
- G_CALLBACK (gst_autoplug_pads_autoplug_func), sink);
}
}
@@ -398,7 +399,7 @@ next:
GST_DEBUG (0,"common factory \"%s\"\n", GST_OBJECT_NAME (factory));
- element = gst_elementfactory_create (factory, GST_OBJECT_NAME (factory));
+ element = gst_elementfactory_create (factory, g_strdup (GST_OBJECT_NAME (factory)));
gst_bin_add (GST_BIN(result), element);
if (srcelement != NULL) {
@@ -457,7 +458,7 @@ differ:
factory = (GstElementFactory *)(factories[i]->data);
GST_DEBUG (0,"factory \"%s\"\n", GST_OBJECT_NAME (factory));
- element = gst_elementfactory_create(factory, GST_OBJECT_NAME (factory));
+ element = gst_elementfactory_create(factory, g_strdup (GST_OBJECT_NAME (factory)));
}
else {
element = sinkelement;
@@ -468,6 +469,7 @@ differ:
if (GST_ELEMENT_IS_THREAD_SUGGESTED(element) || use_thread) {
GstElement *queue;
GstPad *srcpad;
+ GstElement *current_bin = thebin;
use_thread = FALSE;
@@ -491,7 +493,7 @@ differ:
gst_bin_add(GST_BIN(thebin), element);
gst_autoplug_signal_new_object (GST_AUTOPLUG (autoplug), GST_OBJECT (element));
GST_DEBUG (0,"adding element %s\n", GST_ELEMENT_NAME (thebin));
- gst_bin_add(GST_BIN(result), thebin);
+ gst_bin_add(GST_BIN(current_bin), thebin);
gst_autoplug_signal_new_object (GST_AUTOPLUG (autoplug), GST_OBJECT (thebin));
thesrcelement = queue;
}