diff options
author | Stefan Kost <ensonic@users.sourceforge.net> | 2009-01-08 13:41:19 +0000 |
---|---|---|
committer | Stefan Kost <ensonic@users.sourceforge.net> | 2009-01-08 13:41:19 +0000 |
commit | 291c2822f898ea0fb42a434365fb04b96ae7b56e (patch) | |
tree | e458f11c464bbec23df4a57f967b0350d5bf2423 | |
parent | b8b0c80b299fef59739dde3e0c181b0b29c5f45e (diff) |
gst/gst.c: Create a registry if there is none also when the option for gst-disable-registry-update has been selected....
Original commit message from CVS:
* gst/gst.c:
Create a registry if there is none also when the option for
gst-disable-registry-update has been selected. Fixes #567002
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | gst/gst.c | 21 |
2 files changed, 19 insertions, 8 deletions
@@ -1,3 +1,9 @@ +2009-01-08 Stefan Kost <ensonic@users.sf.net> + + * gst/gst.c: + Create a registry if there is none also when the option for + gst-disable-registry-update has been selected. Fixes #567002 + 2009-01-06 Tim-Philipp Müller <tim.muller at collabora co uk> * gst/gst.c: (init_post): @@ -903,6 +903,7 @@ ensure_current_registry (GError ** error) gboolean ret = TRUE; gboolean do_fork; gboolean do_update; + gboolean have_cache; default_registry = gst_registry_get_default (); registry_file = g_strdup (g_getenv ("GST_REGISTRY")); @@ -918,19 +919,23 @@ ensure_current_registry (GError ** error) GST_INFO ("reading registry cache: %s", registry_file); #ifdef USE_BINARY_REGISTRY - gst_registry_binary_read_cache (default_registry, registry_file); + have_cache = gst_registry_binary_read_cache (default_registry, registry_file); #else - gst_registry_xml_read_cache (default_registry, registry_file); + have_cache = gst_registry_xml_read_cache (default_registry, registry_file); #endif - do_update = !_gst_disable_registry_update; - if (do_update) { - const gchar *update_env; + if (have_cache) { + do_update = !_gst_disable_registry_update; + if (do_update) { + const gchar *update_env; - if ((update_env = g_getenv ("GST_REGISTRY_UPDATE"))) { - /* do update for any value different from "no" */ - do_update = (strcmp (update_env, "no") != 0); + if ((update_env = g_getenv ("GST_REGISTRY_UPDATE"))) { + /* do update for any value different from "no" */ + do_update = (strcmp (update_env, "no") != 0); + } } + } else { + do_update = TRUE; } if (do_update) { |