Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package wireplumber for openSUSE:Factory 
checked in at 2024-04-18 22:10:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wireplumber (Old)
 and      /work/SRC/openSUSE:Factory/.wireplumber.new.26366 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "wireplumber"

Thu Apr 18 22:10:39 2024 rev:34 rq:1168471 version:0.5.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/wireplumber/wireplumber.changes  2024-04-02 
16:38:31.416632396 +0200
+++ /work/SRC/openSUSE:Factory/.wireplumber.new.26366/wireplumber.changes       
2024-04-18 22:11:21.506730234 +0200
@@ -1,0 +2,11 @@
+Mon Apr 15 07:54:54 UTC 2024 - Antonio Larrosa <alarr...@suse.com>
+
+- Add patch from upstream to silence a warning on pipewire
+  (since 1.0.5):
+  * 0001-core-set-context.modules.allow-empty-to-silence-warning-in.patch
+- Add patch from upstream to fix a dangling reference to a device:
+  * 0002-monitor-utils-clear-cam-data-after-creating-nodes.patch
+- Add patch from upstream to fix BAP node naming:
+  * 0003-monitors_bluez-fix-BAP-device-set-node-naming.patch
+
+-------------------------------------------------------------------

New:
----
  0001-core-set-context.modules.allow-empty-to-silence-warning-in.patch
  0002-monitor-utils-clear-cam-data-after-creating-nodes.patch
  0003-monitors_bluez-fix-BAP-device-set-node-naming.patch

BETA DEBUG BEGIN:
  New:  (since 1.0.5):
  * 0001-core-set-context.modules.allow-empty-to-silence-warning-in.patch
- Add patch from upstream to fix a dangling reference to a device:
  New:- Add patch from upstream to fix a dangling reference to a device:
  * 0002-monitor-utils-clear-cam-data-after-creating-nodes.patch
- Add patch from upstream to fix BAP node naming:
  New:- Add patch from upstream to fix BAP node naming:
  * 0003-monitors_bluez-fix-BAP-device-set-node-naming.patch
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ wireplumber.spec ++++++
--- /var/tmp/diff_new_pack.ritfeW/_old  2024-04-18 22:11:22.130753166 +0200
+++ /var/tmp/diff_new_pack.ritfeW/_new  2024-04-18 22:11:22.134753313 +0200
@@ -30,6 +30,9 @@
 URL:            https://gitlab.freedesktop.org/pipewire/wireplumber
 Source0:        wireplumber-%{version}.tar.xz
 Source1:        split-config-file.py
+Patch0:         
0001-core-set-context.modules.allow-empty-to-silence-warning-in.patch
+Patch1:         0002-monitor-utils-clear-cam-data-after-creating-nodes.patch
+Patch2:         0003-monitors_bluez-fix-BAP-device-set-node-naming.patch
 # docs
 BuildRequires:  doxygen
 BuildRequires:  graphviz

++++++ 0001-core-set-context.modules.allow-empty-to-silence-warning-in.patch 
++++++
>From 7856124df0ebd28e259ce5b84b186cc4c859acd7 Mon Sep 17 00:00:00 2001
From: George Kiagiadakis <george.kiagiada...@collabora.com>
Date: Wed, 3 Apr 2024 11:52:18 +0300
Subject: [PATCH] core: set context.modules.allow-empty to silence warning in
 pw_context

See 
https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/cddea858d9e8894d777b1830d76db18e57791e29

Closes: #620
---
 lib/wp/core.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/wp/core.c b/lib/wp/core.c
index 9de0e69b..7e59447a 100644
--- a/lib/wp/core.c
+++ b/lib/wp/core.c
@@ -330,6 +330,7 @@ wp_core_constructed (GObject *object)
 
       /* disable loading of a configuration file in pw_context */
       wp_properties_set (self->properties, PW_KEY_CONFIG_NAME, "null");
+      wp_properties_set (self->properties, "context.modules.allow-empty", 
"true");
     }
 
     /* properties are fully stored in the pw_context, no need to keep a copy */
-- 
GitLab


++++++ 0002-monitor-utils-clear-cam-data-after-creating-nodes.patch ++++++
>From 8ee351838dac5ac25224ca2a22bb1a55eace0291 Mon Sep 17 00:00:00 2001
From: George Kiagiadakis <george.kiagiada...@collabora.com>
Date: Wed, 3 Apr 2024 11:32:35 +0300
Subject: [PATCH] monitor-utils: clear cam data after creating nodes

The cam_data structure stores a reference to the "parent" WpSpaDevice
and doesn't allow it to be destroyed when the monitor detects that
the device is no longer present. Clear it right after pushing the event
to make sure there's no dangling reference left around

Fixes: #627
---
 src/scripts/lib/monitor-utils.lua | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/scripts/lib/monitor-utils.lua 
b/src/scripts/lib/monitor-utils.lua
index 5c58cd68..c23ec1cd 100644
--- a/src/scripts/lib/monitor-utils.lua
+++ b/src/scripts/lib/monitor-utils.lua
@@ -40,6 +40,15 @@ function mutils.get_cam_data (self, dev_string)
   return self.cam_data[dev_num], dev_num
 end
 
+function mutils.clear_cam_data (self, dev_string)
+  local dev_num = tonumber (dev_string)
+  if not dev_num then
+    return
+  end
+
+  self.cam_data[dev_num] = nil
+end
+
 function mutils.create_cam_node (self, dev_num)
   local api = nil
   local cam_data = self:get_cam_data (dev_num)
@@ -65,6 +74,8 @@ function mutils.create_cam_node (self, dev_num)
   e:set_data ("node-sub-id", cam_data[api].id)
 
   EventDispatcher.push_event (e)
+
+  self:clear_cam_data (dev_num)
 end
 
 -- arbitrates between v4l2 and libcamera on who gets to create the device node
-- 
GitLab


++++++ 0003-monitors_bluez-fix-BAP-device-set-node-naming.patch ++++++
>From 9d7c6b85d0d2f8e26298cbaf072491662a9d2702 Mon Sep 17 00:00:00 2001
From: Pauli Virtanen <p...@iki.fi>
Date: Sat, 6 Apr 2024 21:59:16 +0300
Subject: [PATCH] monitors/bluez: fix BAP device set node naming

It is intended that its name is the actual device node name.
Fix this, as it was broken in some recent changes.
---
 src/scripts/monitors/bluez.lua | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/src/scripts/monitors/bluez.lua b/src/scripts/monitors/bluez.lua
index 336cd619..c3c00c60 100644
--- a/src/scripts/monitors/bluez.lua
+++ b/src/scripts/monitors/bluez.lua
@@ -171,7 +171,6 @@ end)
 
 function createSetNode(parent, id, type, factory, properties)
   local args = {}
-  local name
   local target_class
   local stream_class
   local rules = {}
@@ -181,12 +180,10 @@ function createSetNode(parent, id, type, factory, 
properties)
   local channels = channels_json:parse ()
 
   if properties["media.class"] == "Audio/Sink" then
-    name = "bluez_output_internal"
     args["combine.mode"] = "sink"
     target_class = "Audio/Sink/Internal"
     stream_class = "Stream/Output/Audio/Internal"
   else
-    name = "bluez_input_internal"
     args["combine.mode"] = "source"
     target_class = "Audio/Source/Internal"
     stream_class = "Stream/Input/Audio/Internal"
@@ -214,7 +211,6 @@ function createSetNode(parent, id, type, factory, 
properties)
     )
   end
 
-  properties["node.name"] = name
   properties["node.virtual"] = false
   properties["device.api"] = "bluez5"
   properties["api.bluez5.set.members"] = nil
-- 
GitLab

Reply via email to