projects
/
m6w6
/
libmemcached
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
Fix for most errors around non-block
[m6w6/libmemcached]
/
libmemcached
/
memcached_connect.c
diff --git
a/libmemcached/memcached_connect.c
b/libmemcached/memcached_connect.c
index 54316c59f90e677eae6752a7bedc45b318adfca0..4cd5219afebabb90689bb6c1fcf6e5a749138cb6 100644
(file)
--- a/
libmemcached/memcached_connect.c
+++ b/
libmemcached/memcached_connect.c
@@
-1,4
+1,5
@@
#include "common.h"
#include "common.h"
+#include <netdb.h>
#include <poll.h>
#include <sys/time.h>
#include <poll.h>
#include <sys/time.h>
@@
-183,8
+184,6
@@
static memcached_return network_connect(memcached_server_st *ptr)
return MEMCACHED_FAILURE;
}
}
return MEMCACHED_FAILURE;
}
}
- /* Old connection junk still is in the structure */
- WATCHPOINT_ASSERT(ptr->cursor_active == 0);
if (ptr->sockaddr_inited == MEMCACHED_NOT_ALLOCATED ||
(!(ptr->root->flags & MEM_USE_CACHE_LOOKUPS)))
if (ptr->sockaddr_inited == MEMCACHED_NOT_ALLOCATED ||
(!(ptr->root->flags & MEM_USE_CACHE_LOOKUPS)))
@@
-235,7
+234,7
@@
test_connect:
{
goto handle_retry;
}
{
goto handle_retry;
}
- else if (error != 1
||
fds[0].revents & POLLERR)
+ else if (error != 1
&&
fds[0].revents & POLLERR)
{
ptr->cached_errno= errno;
WATCHPOINT_ERRNO(ptr->cached_errno);
{
ptr->cached_errno= errno;
WATCHPOINT_ERRNO(ptr->cached_errno);
@@
-248,13
+247,13
@@
test_connect:
ptr->address_info= NULL;
}
ptr->address_info= NULL;
}
- if (ptr->root->retry_timeout)
- {
- struct timeval next_time;
+
if (ptr->root->retry_timeout)
+
{
+
struct timeval next_time;
- gettimeofday(&next_time, NULL);
- ptr->next_retry= next_time.tv_sec + ptr->root->retry_timeout;
- }
+
gettimeofday(&next_time, NULL);
+
ptr->next_retry= next_time.tv_sec + ptr->root->retry_timeout;
+
}
ptr->server_failure_counter+= 1;
return MEMCACHED_ERRNO;
}
ptr->server_failure_counter+= 1;
return MEMCACHED_ERRNO;
}