[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r4007 - GNUnet/src/util/network_client
From: |
grothoff |
Subject: |
[GNUnet-SVN] r4007 - GNUnet/src/util/network_client |
Date: |
Thu, 21 Dec 2006 18:17:17 -0800 (PST) |
Author: grothoff
Date: 2006-12-21 18:17:16 -0800 (Thu, 21 Dec 2006)
New Revision: 4007
Modified:
GNUnet/src/util/network_client/tcpio.c
Log:
race
Modified: GNUnet/src/util/network_client/tcpio.c
===================================================================
--- GNUnet/src/util/network_client/tcpio.c 2006-12-22 02:15:51 UTC (rev
4006)
+++ GNUnet/src/util/network_client/tcpio.c 2006-12-22 02:17:16 UTC (rev
4007)
@@ -313,12 +313,15 @@
size_t size;
size_t sent;
int res;
-
+
+ MUTEX_LOCK(sock->destroylock);
MUTEX_LOCK(sock->writelock);
if (SYSERR == connection_ensure_connected(sock)) {
MUTEX_UNLOCK(sock->writelock);
+ MUTEX_UNLOCK(sock->destroylock);
return SYSERR;
}
+ MUTEX_UNLOCK(sock->destroylock);
GE_ASSERT(NULL, sock->sock != NULL);
size = ntohs(buffer->size);
res = socket_send(sock->sock,
@@ -344,11 +347,14 @@
unsigned short size;
RETURN_ERROR_MESSAGE * rem;
+ MUTEX_LOCK(sock->destroylock);
MUTEX_LOCK(sock->readlock);
if (OK != connection_ensure_connected(sock)) {
MUTEX_UNLOCK(sock->readlock);
+ MUTEX_UNLOCK(sock->destroylock);
return SYSERR;
}
+ MUTEX_UNLOCK(sock->destroylock);
GE_ASSERT(NULL, sock->sock != NULL);
while (1) {
pos = 0;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r4007 - GNUnet/src/util/network_client,
grothoff <=