X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fconnect.cc;h=2e2dbf616fbe4fcb22f4fcc437f6fd17e947873b;hb=6b7d046bd25c3c012c20b184415e81266ad037e3;hp=22e259f41f3335fdfb75dcd23a040bfef4d00cb5;hpb=f307354df645d61f872b74102d501068c9443e2e;p=awesomized%2Flibmemcached diff --git a/libmemcached/connect.cc b/libmemcached/connect.cc index 22e259f4..2e2dbf61 100644 --- a/libmemcached/connect.cc +++ b/libmemcached/connect.cc @@ -87,7 +87,7 @@ static memcached_return_t connect_poll(org::libmemcached::Instance* server, cons int local_errno= get_socket_errno(); // We cache in case closesocket() modifies errno switch (local_errno) { -#ifdef TARGET_OS_LINUX +#ifdef __linux__ case ERESTART: #endif case EINTR: @@ -103,22 +103,6 @@ static memcached_return_t connect_poll(org::libmemcached::Instance* server, cons default: // This should not happen break; -#if 0 - if (fds[0].revents & POLLERR) - { - int err; - socklen_t len= sizeof(err); - if (getsockopt(server->fd, SOL_SOCKET, SO_ERROR, (char*)&err, &len) == 0) - { - if (err == 0) - { - // This should never happen, if it does? Punt. - continue; - } - local_errno= err; - } - } -#endif } assert_msg(server->fd != INVALID_SOCKET, "poll() was passed an invalid file descriptor"); @@ -146,13 +130,9 @@ static memcached_return_t connect_poll(org::libmemcached::Instance* server, cons } } - return memcached_set_error(*server, MEMCACHED_TIMEOUT, MEMCACHED_AT); + return memcached_set_error(*server, MEMCACHED_TIMEOUT, MEMCACHED_AT, memcached_literal_param("(number_of == 0)")); } -#if 0 - server->revents(fds[0].revents); -#endif - assert (number_of == 1); if (fds[0].revents & POLLERR or @@ -663,7 +643,8 @@ static memcached_return_t network_connect(org::libmemcached::Instance* server) if (timeout_error_occured and server->state < MEMCACHED_SERVER_STATE_IN_PROGRESS) { - return memcached_set_error(*server, MEMCACHED_TIMEOUT, MEMCACHED_AT); + return memcached_set_error(*server, MEMCACHED_TIMEOUT, MEMCACHED_AT, + memcached_literal_param("if (timeout_error_occured and server->state < MEMCACHED_SERVER_STATE_IN_PROGRESS)")); } return memcached_set_error(*server, MEMCACHED_CONNECTION_FAILURE, MEMCACHED_AT); /* The last error should be from connect() */