[meta-freescale] [meta-fsl-arm][PATCH v2 5/5] gst-plugins-gl: Fix build of X11 backend
Otavio Salvador
otavio at ossystems.com.br
Thu Apr 4 20:07:53 PDT 2013
On Thu, Apr 4, 2013 at 11:25 PM, Philip Craig <phil at blackmoth.com.au> wrote:
> On Fri, Apr 5, 2013 at 11:42 AM, Otavio Salvador
> <otavio at ossystems.com.br> wrote:
>> The X11 backend were failing to build due deprecated calls of GLib
>> methods; this fixes it.
>>
>> Change-Id: Iaf289bc174b45c69ef6d0c590e12daef78e65a49
>> Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
>> ---
>> .../0002-remove-deprecated-glib-semaphores.patch | 49 ++++++++++++++++++----
>> .../gstreamer/gst-plugins-gl_0.10.3.bbappend | 2 +-
>> 2 files changed, 43 insertions(+), 8 deletions(-)
>>
>> diff --git a/recipes-multimedia/gstreamer/gst-plugins-gl/0002-remove-deprecated-glib-semaphores.patch b/recipes-multimedia/gstreamer/gst-plugins-gl/0002-remove-deprecated-glib-semaphores.patch
>> index d50290d..36a946b 100644
>> --- a/recipes-multimedia/gstreamer/gst-plugins-gl/0002-remove-deprecated-glib-semaphores.patch
>> +++ b/recipes-multimedia/gstreamer/gst-plugins-gl/0002-remove-deprecated-glib-semaphores.patch
>> @@ -1,7 +1,7 @@
>> -From 5b7e83390bbf87e67079c1dc8fcf12b321d7b0a0 Mon Sep 17 00:00:00 2001
>> +From f48afb8dc3b7a89de7c72b8076b3003c320cf0a9 Mon Sep 17 00:00:00 2001
>> From: Jeremy Stashluk <jstashluk at dekaresearch.com>
>> Date: Tue, 19 Feb 2013 09:46:29 -0500
>> -Subject: remove deprecated glib semaphores
>> +Subject: [PATCH] remove deprecated glib semaphores
>>
>> glib deprecated g_{mutex|cond}_new calls since version 3.32. Replace
>> with the updated g_{mutex|cond}_init calls.
>> @@ -12,10 +12,11 @@ Upstream-Status: Pending
>>
>> Signed-off-by: Jeremy Stashluk <jstashluk at dekaresearch.com>
>> ---
>> - gst-libs/gst/gl/gstgldisplay.c | 20 +++++++++++---------
>> - gst-libs/gst/gl/gstglmixer.c | 5 +++--
>> - gst-libs/gst/gl/gstglwindow_fbES2.c | 15 +++++++++------
>> - 3 files changed, 23 insertions(+), 17 deletions(-)
>> + gst-libs/gst/gl/gstgldisplay.c | 20 +++++++++++---------
>> + gst-libs/gst/gl/gstglmixer.c | 5 +++--
>> + gst-libs/gst/gl/gstglwindow_fbES2.c | 15 +++++++++------
>> + gst-libs/gst/gl/gstglwindow_x11ES2.c | 10 ++++++----
>> + 4 files changed, 29 insertions(+), 21 deletions(-)
>>
>> diff --git a/gst-libs/gst/gl/gstgldisplay.c b/gst-libs/gst/gl/gstgldisplay.c
>> index a2589cb..1beac40 100644
>> @@ -141,6 +142,40 @@ index 57c02e1..d73cada 100644
>> priv->running = TRUE;
>> priv->allow_extra_expose_events = TRUE;
>>
>> +diff --git a/gst-libs/gst/gl/gstglwindow_x11ES2.c b/gst-libs/gst/gl/gstglwindow_x11ES2.c
>> +index 65afb50..814ce68 100644
>> +--- a/gst-libs/gst/gl/gstglwindow_x11ES2.c
>> ++++ b/gst-libs/gst/gl/gstglwindow_x11ES2.c
>> +@@ -159,14 +159,14 @@ gst_gl_window_finalize (GObject * object)
>> + g_debug ("display sender closed\n");
>> +
>> + if (priv->cond_send_message) {
>> +- g_cond_free (priv->cond_send_message);
>> ++ g_cond_clear (priv->cond_send_message);
>> + priv->cond_send_message = NULL;
>> + }
>> +
>> + g_mutex_unlock (priv->x_lock);
>> +
>> + if (priv->x_lock) {
>> +- g_mutex_free (priv->x_lock);
>> ++ g_mutex_clear (priv->x_lock);
>> + priv->x_lock = NULL;
>> + }
>> +
>> +@@ -329,8 +329,10 @@ gst_gl_window_new (gulong external_gl_context)
>> +
>> + setlocale (LC_NUMERIC, "C");
>> +
>> +- priv->x_lock = g_mutex_new ();
>> +- priv->cond_send_message = g_cond_new ();
>> ++ priv->x_lock = g_new (GMutex, 1);
>> ++ priv->cond_send_message = g_new (GCond, 1);
>
> There is no matching g_free() for the g_new(), so won't this leak
> memory now? It probably should embed the locks in the structure,
> rather than allocating them with g_new().
According to GLib doc it does free the resouces
(https://developer.gnome.org/glib/2.31/glib-Threads.html#g-mutex-clear)
>> ++ g_mutex_init (priv->x_lock);
>> ++ g_cond_init (priv->cond_send_message);
>> + priv->running = TRUE;
>> + priv->visible = FALSE;
>> + priv->parent = 0;
>> --
>> -1.7.9.5
>> +1.8.1
>>
>> diff --git a/recipes-multimedia/gstreamer/gst-plugins-gl_0.10.3.bbappend b/recipes-multimedia/gstreamer/gst-plugins-gl_0.10.3.bbappend
>> index 65257d5..20fa0a6 100644
>> --- a/recipes-multimedia/gstreamer/gst-plugins-gl_0.10.3.bbappend
>> +++ b/recipes-multimedia/gstreamer/gst-plugins-gl_0.10.3.bbappend
>> @@ -1,7 +1,7 @@
>> # gst-plugins-gl for imx6 Vivante
>>
>> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
>> -PRINC := "${@int(PRINC) + 2}"
>> +PRINC := "${@int(PRINC) + 3}"
>>
>> DEPENDS_append_mx6 = " gst-fsl-plugin gpu-viv-bin-mx6q"
>>
>> --
>> 1.8.1
>>
>> _______________________________________________
>> meta-freescale mailing list
>> meta-freescale at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-freescale
--
Otavio Salvador O.S. Systems
E-mail: otavio at ossystems.com.br http://www.ossystems.com.br
Mobile: +55 53 9981-7854 http://projetos.ossystems.com.br
More information about the meta-freescale
mailing list