[Bug 679115] Windows: Make the GStreamer DLLs/data relocatable

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Jul 24 02:11:41 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=679115
  GStreamer | gstreamer (core) | git

Sebastian Dröge (slomo) <slomo> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #218883|none                        |needs-work
             status|                            |

--- Comment #4 from Sebastian Dröge (slomo) <slomo at circular-chaos.org> 2013-07-24 09:11:34 UTC ---
Review of attachment 218883:
 --> (https://bugzilla.gnome.org/review?bug=679115&attachment=218883)

Sounds like a good idea in general but:

::: gst/gst.c
@@ +124,3 @@
+{
+  return g_build_filename (
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),

Leaks return value of g_win32_get...()

@@ +125,3 @@
+  return g_build_filename (
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),
+    "lib",

If it is called lib or not depends on the parameters passed to configure, i.e.
--libdir. Could also be called anything else

@@ +1129,2 @@
   g_type_class_unref (g_type_class_peek (gst_allocator_flags_get_type ()));


Why these unrelated changes? :)

::: gst/gstpluginloader.c
@@ +65,3 @@
+{
+  return g_build_filename (
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),

Leaking return value

@@ +67,3 @@
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),
+#ifdef _DEBUG
+    "debug",

Is this standard?

@@ +69,3 @@
+    "debug",
+#endif
+    "lib",

This one is in libexec, not lib. Also configurable with --libexecdir at
configure

@@ +73,3 @@
+    NULL);
+}
+#define GST_PLUGIN_SCANNER_INSTALLED get_plugin_scanner_dir()

You'll leak the memory here because the code below assumes it's a static string

::: gst/gstpreset.c
@@ +110,3 @@
+{
+  return g_build_filename (
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),

Leaking return value

@@ +118,3 @@
+#undef GST_DATADIR
+#endif
+#define GST_DATADIR get_datadir()

Leaking the memory below

::: gst/gstregistry.c
@@ +142,3 @@
+{
+  return g_build_filename (
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),

Leaking return value

@@ +144,3 @@
+    g_win32_get_package_installation_directory_of_module
(_priv_gst_dll_handle),
+#ifdef _DEBUG
+    "debug",

Is this standard?

@@ +1609,3 @@
     /* add the main (installed) library path */
+    GST_DEBUG ("scanning main plugins %s", plugin_dir);
+    changed |= gst_registry_scan_path_internal (&context, plugin_dir);

There is already code like this in gstregistry.c, 5 lines below :)

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the gstreamer-bugs mailing list