summaryrefslogtreecommitdiff
path: root/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch
blob: 0b86979ce732637e194ad7f38459863eac93857d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/7908b8d7be2a2992c57cd549054eda7ce46e4b44

From 13b85bd4a25ab374f5e5e90b7288e6987996856e Mon Sep 17 00:00:00 2001
From: Michael Olbrich <m.olbrich@pengutronix.de>
Date: Tue, 24 May 2022 11:35:15 +0200
Subject: [PATCH] m-lua-scripting: fix object refcounting

7908b8d7be2a2992c57cd549054eda7ce46e4b44 ("m-lua-scripting: allow
converting GValue holding NULL objects to Lua") accidentally added a second
refcount. As a result, the objects are never freeded.

Remove the second refcount to fix this.
---
 modules/module-lua-scripting/wplua/value.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/module-lua-scripting/wplua/value.c b/modules/module-lua-scripting/wplua/value.c
index e31ae4a..a7927dc 100644
--- a/modules/module-lua-scripting/wplua/value.c
+++ b/modules/module-lua-scripting/wplua/value.c
@@ -317,7 +317,7 @@ wplua_gvalue_to_lua (lua_State *L, const GValue *v)
   case G_TYPE_INTERFACE: {
     GObject *object = g_value_dup_object (v);
     if (object)
-      wplua_pushobject (L, g_value_dup_object (v));
+      wplua_pushobject (L, object);
     else
       lua_pushnil (L);
     break;
-- 
2.35.1