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; }