Multiarch backward comaptibility.
authorNikhil Devshatwar <a0132237@ti.com>
Wed, 15 May 2013 12:22:36 +0000 (17:52 +0530)
committerNikhil Devshatwar <a0132237@ti.com>
Wed, 15 May 2013 12:22:36 +0000 (17:52 +0530)
gst/gstregistry.c

index e6f6f19ec64e64fe0d219804eeb7f02b95fa603c..79745353b7ec4ae907e6245e6285fb994ff0eec0 100644 (file)
@@ -1554,7 +1554,7 @@ scan_and_update_registry (GstRegistry * default_registry,
    * path, and the plugins installed in the user's home directory */
   plugin_path = g_getenv ("GST_PLUGIN_SYSTEM_PATH");
   if (plugin_path == NULL) {
    * path, and the plugins installed in the user's home directory */
   plugin_path = g_getenv ("GST_PLUGIN_SYSTEM_PATH");
   if (plugin_path == NULL) {
-    char *home_plugins;
+    char *home_plugins, *backwards_compat_plugins;
 
     GST_DEBUG ("GST_PLUGIN_SYSTEM_PATH not set");
 
 
     GST_DEBUG ("GST_PLUGIN_SYSTEM_PATH not set");
 
@@ -1570,6 +1570,13 @@ scan_and_update_registry (GstRegistry * default_registry,
     GST_DEBUG ("scanning main plugins %s", PLUGINDIR);
     changed |= gst_registry_scan_path_internal (&context, PLUGINDIR);
 
     GST_DEBUG ("scanning main plugins %s", PLUGINDIR);
     changed |= gst_registry_scan_path_internal (&context, PLUGINDIR);
 
+    /* finally, look in the /usr/lib backwards-compatibility path. */
+    backwards_compat_plugins = g_build_filename ("/usr/lib",
+        "gstreamer-" GST_MAJORMINOR, NULL);
+    GST_DEBUG ("scanning plugins %s", backwards_compat_plugins);
+    changed |= gst_registry_scan_path_internal (&context, backwards_compat_plugins);
+    g_free (backwards_compat_plugins);
+
 #ifdef G_OS_WIN32
     {
       char *base_dir;
 #ifdef G_OS_WIN32
     {
       char *base_dir;