gst/gstelementfactory.c: make the freakin "elementfactory bla has no type" message more useful. So we actually can do...

Original commit message from CVS:
* gst/gstelementfactory.c: (gst_element_factory_create):
make the freakin "elementfactory bla has no type" message more
useful. So we actually can do something when someone shows up
complaining about it.
This commit is contained in:
Benjamin Otte 2004-06-16 21:06:50 +00:00
parent d6ae3e5426
commit 3183fa7060
2 changed files with 17 additions and 3 deletions

View file

@ -1,3 +1,10 @@
2004-06-16 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst/gstelementfactory.c: (gst_element_factory_create):
make the freakin "elementfactory bla has no type" message more
useful. So we actually can do something when someone shows up
complaining about it.
2004-06-15 Johan Dahlin <johan@gnome.org>
* tools/gst-inspect.c (main): Fallback to plugin if no element is
@ -81,7 +88,7 @@
2004-06-12 Steve Lhomme <steve.lhomme@free.fr>
* win32/config.h:
* gst/gst-i18n-app.h:
* gst/gst-i18n-app.h:
enable NLS under Windows
2004-06-12 Jan Schmidt <thaytan@mad.scientist.com>

View file

@ -27,6 +27,7 @@
#include "gstregistrypool.h"
#include "gstinfo.h"
#include "gsturi.h"
#include "registries/gstxmlregistry.h" /* g_critical in gst_element_factory_create */
GST_DEBUG_CATEGORY_STATIC (element_factory_debug);
#define GST_CAT_DEFAULT element_factory_debug
@ -283,8 +284,14 @@ gst_element_factory_create (GstElementFactory * factory, const gchar * name)
GST_INFO ("creating \"%s\"", GST_PLUGIN_FEATURE_NAME (factory));
if (factory->type == 0) {
g_critical ("Factory for `%s' has no type",
GST_PLUGIN_FEATURE_NAME (factory));
GstPlugin *plugin = GST_PLUGIN_FEATURE (factory)->manager;
g_critical
("Factory for `%s' has no type. This probably means the plugin wasn't found because the registry is broken. The plugin GStreamer was looking for is named '%s' and is expected in file '%s'. The registry for this plugin is located at '%s'",
GST_PLUGIN_FEATURE_NAME (factory),
gst_plugin_get_name (plugin), gst_plugin_get_filename (plugin),
GST_IS_XML_REGISTRY (plugin->manager) ? GST_XML_REGISTRY (plugin->
manager)->location : "Unknown");
return NULL;
}