From: Andy W. <wi...@us...> - 2002-05-10 01:24:21
|
CVS Root: /cvsroot/gstreamer Module: gstreamer Changes by: wingo Date: Thu May 09 2002 18:24:21 PDT Log message: Funny how doing things the right way takes less code... Modified files: gst/registries : gstxmlregistry.c Links: http://cvs.sf.net/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/gst/registries/gstxmlregistry.c.diff?r1=1.3&r2=1.4 ====Begin Diffs==== Index: gstxmlregistry.c =================================================================== RCS file: /cvsroot/gstreamer/gstreamer/gst/registries/gstxmlregistry.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- gstxmlregistry.c 10 May 2002 01:13:40 -0000 1.3 +++ gstxmlregistry.c 10 May 2002 01:24:08 -0000 1.4 @@ -247,29 +247,14 @@ static gboolean gst_xml_registry_open_func (GstXMLRegistry *registry, GstXMLRegistryMode mode) { - gint ret, i; - gchar *str, *plugin_paths, **plugin_pathv; - GList *l, *paths = GST_REGISTRY (registry)->paths; + GList *paths = GST_REGISTRY (registry)->paths; if (mode == GST_XML_REGISTRY_READ) { if (!plugin_times_older_than (paths, get_time (registry->location))) { - plugin_pathv = g_new0 (gchar*, g_list_length (paths)); - for (l=paths, i=0; l->next; i++, l=l->next) - plugin_pathv[i] = (gchar*) l->data; - plugin_paths = g_strjoinv (":", plugin_pathv); - g_free (plugin_pathv); + GST_INFO (GST_CAT_GST_INIT, "Registry out of date, rebuilding..."); - str = g_strdup_printf ("gst-register --gst-registry=%s --gst-plugin-path=%s", - registry->location, plugin_paths); - GST_INFO (GST_CAT_GST_INIT, "Registry out of date, running gst-register"); - GST_DEBUG (GST_CAT_PLUGIN_LOADING, "gst-register command line: %s", str); - - g_free (plugin_paths); - ret = system (str); - if (ret != 0) { - GST_INFO (GST_CAT_GST_INIT, "Running gst-register for registry %s failed", registry->location); - return FALSE; - } + gst_registry_rebuild (GST_REGISTRY (registry)); + gst_registry_save (GST_REGISTRY (registry)); if (!plugin_times_older_than (paths, get_time (registry->location))) { GST_INFO (GST_CAT_GST_INIT, "Registry still out of date, something is wrong..."); |