diff options
Diffstat (limited to 'src/Net/ServerConnection.cpp')
-rw-r--r-- | src/Net/ServerConnection.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Net/ServerConnection.cpp b/src/Net/ServerConnection.cpp index aa8042e..c415cb3 100644 --- a/src/Net/ServerConnection.cpp +++ b/src/Net/ServerConnection.cpp @@ -21,6 +21,8 @@ #include "FdManager.h" #include "IPAddress.h" +#include <boost/thread/locks.hpp> + #include <cstring> #include <cerrno> #include <sys/socket.h> @@ -61,7 +63,7 @@ void ServerConnection::connectionHeaderReceiveHandler(const void *data, unsigned ServerConnection::ServerConnection(int sock0, const IPAddress &address, gnutls_dh_params_t dh_params, const std::string &x905CertFile, const std::string &x905KeyFile) : daemon(false) { - gl_rwlock_wrlock(stateLock); + boost::unique_lock<boost::shared_mutex> lock(stateLock); sock = sock0; @@ -79,7 +81,7 @@ ServerConnection::ServerConnection(int sock0, const IPAddress &address, gnutls_d state = CONNECT; - gl_rwlock_unlock(stateLock); + lock.unlock(); updateEvents(); } |