diff --git a/utils/system_daemon/daemon.cpp b/utils/system_daemon/daemon.cpp index f6912806..5225ee47 100644 --- a/utils/system_daemon/daemon.cpp +++ b/utils/system_daemon/daemon.cpp @@ -142,12 +142,14 @@ void Daemon::timerEvent(void * _d, int delim) { } -PIStringList Daemon::availableDaemons() const { +PIStringList Daemon::availableDaemons() { available_daemons.clear(); + lock(); piForeachC (PIPeer::PeerInfo & p, allPeers()) { if (!p.name.startsWith("_pisd_")) continue; available_daemons << p.name.mid(6); } + unlock(); return available_daemons; } diff --git a/utils/system_daemon/daemon.h b/utils/system_daemon/daemon.h index 48222aa3..2a3d2925 100644 --- a/utils/system_daemon/daemon.h +++ b/utils/system_daemon/daemon.h @@ -39,7 +39,7 @@ public: void showMainList() {showTile(list_daemons, "Select daemon");} void showActionList() {showTile(list_actions, "Select action");} - PIStringList availableDaemons() const; + PIStringList availableDaemons(); void connectToDaemon(const PIString & dn); void disconnect();