diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2011-03-17 22:04:17 +0200 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2011-03-17 22:04:17 +0200 |
commit | b170dc2b10df0e66acc5bc0bb89ba2c68a755f12 (patch) | |
tree | 775d3286f301bb2e220b8d1eb8456b34fef1f7ee /core/services.cpp | |
parent | c6ceb73febc0f5afcd01341a16dca768d5c627cd (diff) |
mutexes fix
Diffstat (limited to 'core/services.cpp')
-rw-r--r-- | core/services.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/services.cpp b/core/services.cpp index 42f8fb8..3344ca4 100644 --- a/core/services.cpp +++ b/core/services.cpp @@ -36,7 +36,10 @@ void* CallService(const char *name,void* data) for(std::list<service*>::iterator i = services.begin(); i != end; ++i) { if(!ACE_OS::strcmp((*i)->getName(), name)) + { + service_list_mutex.unlock(); return (*i)->getService()(data); + } } service_list_mutex.unlock(); } @@ -50,7 +53,10 @@ bool ServiceExists(const char *name) std::list<service*>::iterator end = services.end(); for(std::list<service*>::iterator i = services.begin(); i != end; ++i) if(!ACE_OS::strcmp((*i)->getName(), name)) + { + service_list_mutex.unlock(); return true; + } } service_list_mutex.unlock(); return false; |