summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Rauwolf <rauwolf@itestra.de>2013-03-14 14:15:41 +0100
committerPhilip Rauwolf <rauwolf@itestra.de>2013-03-14 14:15:41 +0100
commit1d6eb50e8cef6411ccca138475868030f68ecc72 (patch)
treeb548d6dc240bd75000cd589cfe8bc9fb0d033fd0
parent98601b459983368839798d83aa43542bb66a1f94 (diff)
downloadgenivi-common-api-dbus-runtime-1d6eb50e8cef6411ccca138475868030f68ecc72.tar.gz
Eliminated unnecessary mutex in ServiceRegistry (obsolete since locking
also happens in Event.h, rarely even led to deadlocks)
-rw-r--r--src/CommonAPI/DBus/DBusServiceRegistry.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/CommonAPI/DBus/DBusServiceRegistry.cpp b/src/CommonAPI/DBus/DBusServiceRegistry.cpp
index a0ad227..3e3f083 100644
--- a/src/CommonAPI/DBus/DBusServiceRegistry.cpp
+++ b/src/CommonAPI/DBus/DBusServiceRegistry.cpp
@@ -20,7 +20,6 @@ DBusServiceRegistry::DBusServiceRegistry(std::shared_ptr<DBusProxyConnection> db
DBusServiceRegistry::~DBusServiceRegistry() {
if(initialized_) {
- std::lock_guard<std::mutex> dbusServicesLock(dbusServicesMutex_);
dbusDaemonProxy_->getNameOwnerChangedEvent().unsubscribe(dbusDaemonProxyNameOwnerChangedEventSubscription_);
dbusDaemonProxy_->getProxyStatusEvent().unsubscribe(dbusDaemonProxyStatusEventSubscription_);
}
@@ -234,10 +233,11 @@ DBusServiceRegistry::Subscription DBusServiceRegistry::subscribeAvailabilityList
DBusServiceList::iterator dbusServiceIterator = dbusServices_.find(dbusServiceName);
- // add service for the first time
+ // Service not known, so just add it to the list of unkown or definitely not available services
if (dbusServiceIterator == dbusServices_.end()) {
DBusServiceState dbusConnectionNameState = DBusServiceState::UNKNOWN;
+ // Service is definitely not available if the complete list of available services is known and it is not in there
if (dbusNameListStatus_ == AvailabilityStatus::AVAILABLE) {
dbusConnectionNameState = DBusServiceState::RESOLVED;
}