| From fd8f49dba8c09d47425da80f5faab3bfa4a7c962 Mon Sep 17 00:00:00 2001 |
| From: Jose Quaresma <quaresma.jose@gmail.com> |
| Date: Sat, 10 Oct 2020 19:09:03 +0000 |
| Subject: [PATCH 1/3] gstpluginloader: when env var is set do not fall through |
| to system plugin scanner |
| |
| If we set a custom GST_PLUGIN_SCANNER env var, then we probably want to use that and only that. |
| |
| Falling through to the one installed on the system is problamatic in cross-compilation |
| environemnts, regardless of whether one pointed to by the env var succeeded or failed. |
| |
| taken from: |
| http://cgit.openembedded.org/openembedded-core/commit/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch?id=0db7ba34ca41b107042306d13a6f0162885c123b |
| |
| Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/669> |
| |
| Upstream-Status: Backport [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/9f958058697e6fbf5bde325228034572331d1a3a] |
| |
| Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> |
| --- |
| gst/gstpluginloader.c | 15 +++++++-------- |
| 1 file changed, 7 insertions(+), 8 deletions(-) |
| |
| diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c |
| index d1e404d98..c626bf263 100644 |
| --- a/gst/gstpluginloader.c |
| +++ b/gst/gstpluginloader.c |
| @@ -464,20 +464,19 @@ gst_plugin_loader_spawn (GstPluginLoader * loader) |
| if (loader->child_running) |
| return TRUE; |
| |
| - /* Find the gst-plugin-scanner: first try the env-var if it is set, |
| - * otherwise use the installed version */ |
| + /* Find the gst-plugin-scanner */ |
| env = g_getenv ("GST_PLUGIN_SCANNER_1_0"); |
| if (env == NULL) |
| env = g_getenv ("GST_PLUGIN_SCANNER"); |
| |
| if (env != NULL && *env != '\0') { |
| + /* use the env-var if it is set */ |
| GST_LOG ("Trying GST_PLUGIN_SCANNER env var: %s", env); |
| helper_bin = g_strdup (env); |
| res = gst_plugin_loader_try_helper (loader, helper_bin); |
| g_free (helper_bin); |
| - } |
| - |
| - if (!res) { |
| + } else { |
| + /* use the installed version */ |
| GST_LOG ("Trying installed plugin scanner"); |
| |
| #ifdef G_OS_WIN32 |
| @@ -497,10 +496,10 @@ gst_plugin_loader_spawn (GstPluginLoader * loader) |
| #endif |
| res = gst_plugin_loader_try_helper (loader, helper_bin); |
| g_free (helper_bin); |
| + } |
| |
| - if (!res) { |
| - GST_INFO ("No gst-plugin-scanner available, or not working"); |
| - } |
| + if (!res) { |
| + GST_INFO ("No gst-plugin-scanner available, or not working"); |
| } |
| |
| return loader->child_running; |
| -- |
| 2.29.2 |
| |