diff --git a/statusnotifierwatcher/statusnotifierwatcher.cpp b/statusnotifierwatcher/statusnotifierwatcher.cpp --- a/statusnotifierwatcher/statusnotifierwatcher.cpp +++ b/statusnotifierwatcher/statusnotifierwatcher.cpp @@ -76,6 +76,10 @@ m_registeredServices.append(notifierItemId); m_serviceWatcher->addWatchedService(service); emit StatusNotifierItemRegistered(notifierItemId); + //possible race condition, check if service still exists + if (!QDBusConnection::sessionBus().interface()->isServiceRegistered(service).value()) { + serviceUnregistered(service); + } } } }