From: Nirbheek Chauhan Date: Mon, 22 Jun 2020 22:13:53 +0000 (+0530) Subject: registry: Use a toolchain-specific registry file on Windows X-Git-Tag: 1.19.3~794 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=43174bfe1d3f41f0ae99963b71b55d93ced013c1;p=platform%2Fupstream%2Fgstreamer.git registry: Use a toolchain-specific registry file on Windows If we load a plugin registry for MinGW plugins when running with MSVC, we will have to write out the whole cache again, and vice-versa. Just use separate cache files so that the cache is actually useful. Closes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/427 Part-of: --- diff --git a/gst/gstregistry.c b/gst/gstregistry.c index 7ed85d7..3ef4d86 100644 --- a/gst/gstregistry.c +++ b/gst/gstregistry.c @@ -122,6 +122,19 @@ extern HMODULE _priv_gst_dll_handle; #endif +/* Use a toolchain-dependent suffix on Windows */ +#ifdef G_OS_WIN32 +# ifdef _MSC_VER +# define GST_REGISTRY_FILE_SUFFIX TARGET_CPU "-msvc" +# else +# define GST_REGISTRY_FILE_SUFFIX TARGET_CPU "-mingw" +# endif +#else +# define GST_REGISTRY_FILE_SUFFIX TARGET_CPU +#endif +#define GST_REGISTRY_FILE_NAME "registry." GST_REGISTRY_FILE_SUFFIX ".bin" + + #define GST_CAT_DEFAULT GST_CAT_REGISTRY struct _GstRegistryPrivate @@ -1735,7 +1748,7 @@ ensure_current_registry (GError ** error) registry_file = g_strdup (g_getenv ("GST_REGISTRY")); if (registry_file == NULL) { registry_file = g_build_filename (g_get_user_cache_dir (), - "gstreamer-" GST_API_VERSION, "registry." TARGET_CPU ".bin", NULL); + "gstreamer-" GST_API_VERSION, GST_REGISTRY_FILE_NAME, NULL); } if (!_gst_disable_registry_cache) {