diff options
Diffstat (limited to 'media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch')
-rw-r--r-- | media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch new file mode 100644 index 000000000000..0b86979ce732 --- /dev/null +++ b/media-video/wireplumber/files/wireplumber-0.4.10-m-lua-scripting-fix-object-refcounting.patch @@ -0,0 +1,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 + |