From c0e24cc461cb60cde2791cd89d59a1ff1be0f6b2 Mon Sep 17 00:00:00 2001 From: Joel Klinghed Date: Sun, 19 Oct 2025 20:57:03 +0200 Subject: bt: Fix interface update for DeviceProxy BaseProxy had a hardcoded leftover pointing to AdapterInterface only. --- src/bt.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/bt.cc') diff --git a/src/bt.cc b/src/bt.cc index 7a504a2..e3c12d9 100644 --- a/src/bt.cc +++ b/src/bt.cc @@ -205,9 +205,11 @@ class BaseProxy : public sdbus::ProxyInterfaces { protected: BaseProxy(sdbus::IConnection& connection, sdbus::ObjectPath const& path, + sdbus::InterfaceName const& interface, std::map const& names) : sdbus::ProxyInterfaces(connection, kService, path), + interface_(interface), names_(names) {} virtual void update(size_t field, sdbus::Variant const& value) = 0; @@ -229,7 +231,7 @@ class BaseProxy : public sdbus::ProxyInterfaces { const sdbus::InterfaceName& interface_name, const std::map& changed, const std::vector& invalidated) override { - if (interface_name != kAdapterInterface) + if (interface_name != interface_) return; ++waiting_; for (auto const& pair : changed) { @@ -262,6 +264,7 @@ class BaseProxy : public sdbus::ProxyInterfaces { } } + sdbus::InterfaceName const& interface_; std::map const& names_; uint8_t waiting_{0}; bool updated_{false}; @@ -279,7 +282,8 @@ class DeviceProxy : public BaseProxy, public Device { DeviceProxy(IManager& manager, sdbus::IConnection& connection, sdbus::ObjectPath const& path, std::map const& properties) - : BaseProxy(connection, path, kNames), manager_(manager) { + : BaseProxy(connection, path, kDeviceInterface, kNames), + manager_(manager) { init(properties); } @@ -370,7 +374,8 @@ class AdapterProxy : public BaseProxy, public Adapter { AdapterProxy(IManager& manager, sdbus::IConnection& connection, sdbus::ObjectPath const& path, std::map const& properties) - : BaseProxy(connection, path, kNames), manager_(manager) { + : BaseProxy(connection, path, kAdapterInterface, kNames), + manager_(manager) { init(properties); } -- cgit v1.2.3-70-g09d2