From 87d99b866f9866db10b55c8b03632f0eecae52d8 Mon Sep 17 00:00:00 2001 From: outfoxxed Date: Fri, 4 Jul 2025 20:29:50 -0700 Subject: [PATCH] services/pipewire: destroy bound audio object when node is destroyed Fixes a leak and prevents a UAF via device volume signals derefing the freed node. Fixes #91 --- src/services/pipewire/node.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/services/pipewire/node.cpp b/src/services/pipewire/node.cpp index ed65fcaf..3c7af1d3 100644 --- a/src/services/pipewire/node.cpp +++ b/src/services/pipewire/node.cpp @@ -252,7 +252,7 @@ void PwNode::onParam( } } -PwNodeBoundAudio::PwNodeBoundAudio(PwNode* node): node(node) { +PwNodeBoundAudio::PwNodeBoundAudio(PwNode* node): QObject(node), node(node) { if (node->device) { QObject::connect(node->device, &PwDevice::deviceReady, this, &PwNodeBoundAudio::onDeviceReady);