From dc4e517dc6de54182c81e68e27feb13585a66e8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Tue, 14 Apr 2015 12:47:07 +0100 Subject: [PATCH] gio: fix gvfs plugin dependencies Try harder to look for gvfs backend changes in the right place, to make sure the plugin gets reloaded when backends are removed or installed. We watch the gvfs mounts directory because the files there contain absolute paths to the backend executables, and those may not be in the usual gio path. https://bugzilla.gnome.org/show_bug.cgi?id=747841 --- common | 2 +- gst/gio/gstgio.c | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/common b/common index d676993e50..241fcb7de0 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit d676993e50eba12f40d8e176243041d4b91f7b13 +Subproject commit 241fcb7de0af5df777b18821c81840564a7e5c95 diff --git a/gst/gio/gstgio.c b/gst/gio/gstgio.c index 9f2f2ba8b7..6e45e8066c 100644 --- a/gst/gio/gstgio.c +++ b/gst/gio/gstgio.c @@ -231,6 +231,11 @@ gst_gio_uri_handler_do_init (GType type) g_type_add_interface_static (type, GST_TYPE_URI_HANDLER, &uri_handler_info); } +#define GIO_GVFS_MOUNTS_DIR GIO_PREFIX \ + G_DIR_SEPARATOR_S "share" \ + G_DIR_SEPARATOR_S "gvfs" \ + G_DIR_SEPARATOR_S "mounts" + static gboolean plugin_init (GstPlugin * plugin) { @@ -240,8 +245,8 @@ plugin_init (GstPlugin * plugin) gst_plugin_add_dependency_simple (plugin, NULL, GIO_MODULE_DIR, NULL, GST_PLUGIN_DEPENDENCY_FLAG_NONE); - gst_plugin_add_dependency_simple (plugin, "LD_LIBRARY_PATH", GIO_LIBDIR, - "gvfsd", GST_PLUGIN_DEPENDENCY_FLAG_NONE); + gst_plugin_add_dependency_simple (plugin, NULL, GIO_GVFS_MOUNTS_DIR, NULL, + GST_PLUGIN_DEPENDENCY_FLAG_NONE); /* FIXME: Rank is MARGINAL for now, should be at least SECONDARY+1 in the future * to replace gnomevfssink/src. For testing purposes PRIMARY+1 one makes sense