projects
/
awesomized
/
libmemcached
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
Merge in additional documentation.
[awesomized/libmemcached]
/
libmemcached
/
connect.c
diff --git
a/libmemcached/connect.c
b/libmemcached/connect.c
index 5e0c046bd797cdc6ab97d0e67fde5bedcbc1bed9..a7b17f0ce359e9085761f5421d07f8dacc4d34dc 100644
(file)
--- a/
libmemcached/connect.c
+++ b/
libmemcached/connect.c
@@
-9,7
+9,8
@@
*
*/
*
*/
-#include "common.h"
+#include <libmemcached/common.h>
+#include <assert.h>
#include <sys/time.h>
#include <time.h>
#include <sys/time.h>
#include <time.h>
@@
-89,6
+90,7
@@
static memcached_return_t set_hostinfo(memcached_server_st *server)
struct addrinfo hints;
char str_port[NI_MAXSERV];
struct addrinfo hints;
char str_port[NI_MAXSERV];
+ assert(! server->address_info); // We cover the case where a programming mistake has been made.
if (server->address_info)
{
freeaddrinfo(server->address_info);
if (server->address_info)
{
freeaddrinfo(server->address_info);
@@
-163,7
+165,9
@@
static inline memcached_return_t set_socket_nonblocking(memcached_server_st *ptr
int flags;
do
int flags;
do
+ {
flags= fcntl(ptr->fd, F_GETFL, 0);
flags= fcntl(ptr->fd, F_GETFL, 0);
+ }
while (flags == -1 && (errno == EINTR || errno == EAGAIN));
unlikely (flags == -1)
while (flags == -1 && (errno == EINTR || errno == EAGAIN));
unlikely (flags == -1)
@@
-176,7
+180,9
@@
static inline memcached_return_t set_socket_nonblocking(memcached_server_st *ptr
int rval;
do
int rval;
do
+ {
rval= fcntl(ptr->fd, F_SETFL, flags | O_NONBLOCK);
rval= fcntl(ptr->fd, F_SETFL, flags | O_NONBLOCK);
+ }
while (rval == -1 && (errno == EINTR || errno == EAGAIN));
unlikely (rval == -1)
while (rval == -1 && (errno == EINTR || errno == EAGAIN));
unlikely (rval == -1)