From 7d9b3f19a25e8c1feed0ac0fab731820e4ab37d3 Mon Sep 17 00:00:00 2001 From: NeilClack Date: Fri, 7 Aug 2026 19:40:51 -0500 Subject: [PATCH] Log WiFi RequestScan failures with D-Bus error detail The RequestScan result and the underlying sd_bus error were silently dropped, so a denied or failed scan looked identical to an empty scan list on the WiFi setup page. Surface both so the deployed-machine diagnosis (e.g. user not in the networkmanager group) is visible in ~/.local/radiantwave/log.txt. --- src/network/network_manager.cpp | 6 +++++- src/network/nm_device.cpp | 9 ++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/network/network_manager.cpp b/src/network/network_manager.cpp index 0385dcc..20b2626 100644 --- a/src/network/network_manager.cpp +++ b/src/network/network_manager.cpp @@ -379,7 +379,11 @@ bool NetworkManager::requestScan() { } log("Requesting WiFi scan..."); - return impl_->device->requestScan(); + const bool ok = impl_->device->requestScan(); + if (!ok) { + log("RequestScan failed; the network list may stay empty until it succeeds"); + } + return ok; } std::vector NetworkManager::getScanResults() const { diff --git a/src/network/nm_device.cpp b/src/network/nm_device.cpp index 43b9279..ac9eaaa 100644 --- a/src/network/nm_device.cpp +++ b/src/network/nm_device.cpp @@ -1,5 +1,6 @@ #include "nm_device.h" #include "nm_connection.h" +#include "logger/logger.h" #include #include @@ -187,7 +188,13 @@ bool WifiDevice::requestScan() { "a{sv}", 0 // Empty options dict ); - + + if (r < 0) { + radiantwave::logger::Logger::instance().warning("WiFi", + "RequestScan failed on device " + impl_->object_path + ": " + + (error.message ? error.message : strerror(-r))); + } + sd_bus_error_free(&error); return r >= 0; }