projects
/
awesomized
/
libmemcached
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
Merge working tree with build tree.
[awesomized/libmemcached]
/
libmemcached
/
io.cc
diff --git
a/libmemcached/io.cc
b/libmemcached/io.cc
index 8b297a7acaed71215d0c9624f632f91c4909bf7f..049c436dbcb7f24e12a2511c32b00e88b192bade 100644
(file)
--- a/
libmemcached/io.cc
+++ b/
libmemcached/io.cc
@@
-81,10
+81,10
@@
static bool repack_input_buffer(memcached_server_write_instance_st ptr)
case EINTR:
continue;
case EINTR:
continue;
+#if EWOULDBLOCK != EAGAIN
case EWOULDBLOCK:
case EWOULDBLOCK:
-#ifdef USE_EAGAIN
- case EAGAIN:
#endif
#endif
+ case EAGAIN:
#ifdef TARGET_OS_LINUX
case ERESTART:
#endif
#ifdef TARGET_OS_LINUX
case ERESTART:
#endif
@@
-192,8
+192,7
@@
static memcached_return_t io_wait(memcached_server_write_instance_st ptr,
*/
if (read_or_write == MEM_WRITE)
{
*/
if (read_or_write == MEM_WRITE)
{
- memcached_return_t rc= memcached_purge(ptr);
- if (rc != MEMCACHED_SUCCESS && rc != MEMCACHED_STORED)
+ if (memcached_fatal(memcached_purge(ptr)))
{
return MEMCACHED_FAILURE;
}
{
return MEMCACHED_FAILURE;
}
@@
-278,11
+277,10
@@
static bool io_flush(memcached_server_write_instance_st ptr,
** in the purge function to avoid duplicating the logic..
*/
{
** in the purge function to avoid duplicating the logic..
*/
{
- memcached_return_t rc;
WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
- rc= memcached_purge(ptr);
+
memcached_return_t
rc= memcached_purge(ptr);
- if (rc != MEMCACHED_SUCCESS
&&
rc != MEMCACHED_STORED)
+ if (rc != MEMCACHED_SUCCESS
and
rc != MEMCACHED_STORED)
{
return false;
}
{
return false;
}
@@
-327,10
+325,11
@@
static bool io_flush(memcached_server_write_instance_st ptr,
{
case ENOBUFS:
continue;
{
case ENOBUFS:
continue;
+
+#if EWOULDBLOCK != EAGAIN
case EWOULDBLOCK:
case EWOULDBLOCK:
-#ifdef USE_EAGAIN
- case EAGAIN:
#endif
#endif
+ case EAGAIN:
{
/*
* We may be blocked on write because the input buffer
{
/*
* We may be blocked on write because the input buffer
@@
-416,10
+415,10
@@
memcached_return_t memcached_io_read(memcached_server_write_instance_st ptr,
continue;
case ETIMEDOUT: // OSX
continue;
case ETIMEDOUT: // OSX
+#if EWOULDBLOCK != EAGAIN
case EWOULDBLOCK:
case EWOULDBLOCK:
-#ifdef USE_EAGAIN
- case EAGAIN:
#endif
#endif
+ case EAGAIN:
#ifdef TARGET_OS_LINUX
case ERESTART:
#endif
#ifdef TARGET_OS_LINUX
case ERESTART:
#endif
@@
-524,10
+523,10
@@
memcached_return_t memcached_io_slurp(memcached_server_write_instance_st ptr)
continue;
case ETIMEDOUT: // OSX
continue;
case ETIMEDOUT: // OSX
+#if EWOULDBLOCK != EAGAIN
case EWOULDBLOCK:
case EWOULDBLOCK:
-#ifdef USE_EAGAIN
- case EAGAIN:
#endif
#endif
+ case EAGAIN:
#ifdef TARGET_OS_LINUX
case ERESTART:
#endif
#ifdef TARGET_OS_LINUX
case ERESTART:
#endif
@@
-674,9
+673,9
@@
memcached_server_write_instance_st memcached_io_get_readable_server(memcached_st
{
#define MAX_SERVERS_TO_POLL 100
struct pollfd fds[MAX_SERVERS_TO_POLL];
{
#define MAX_SERVERS_TO_POLL 100
struct pollfd fds[MAX_SERVERS_TO_POLL];
-
unsigned in
t host_index= 0;
+
nfds_
t host_index= 0;
- for (uint32_t x= 0; x < memcached_server_count(memc)
&&
host_index < MAX_SERVERS_TO_POLL; ++x)
+ for (uint32_t x= 0; x < memcached_server_count(memc)
and
host_index < MAX_SERVERS_TO_POLL; ++x)
{
memcached_server_write_instance_st instance= memcached_server_instance_fetch(memc, x);
{
memcached_server_write_instance_st instance= memcached_server_instance_fetch(memc, x);
@@
-721,17
+720,18
@@
memcached_server_write_instance_st memcached_io_get_readable_server(memcached_st
break;
default:
break;
default:
- for (
size
_t x= 0; x < host_index; ++x)
+ for (
nfds
_t x= 0; x < host_index; ++x)
{
if (fds[x].revents & POLLIN)
{
for (uint32_t y= 0; y < memcached_server_count(memc); ++y)
{
{
if (fds[x].revents & POLLIN)
{
for (uint32_t y= 0; y < memcached_server_count(memc); ++y)
{
- memcached_server_write_instance_st instance=
- memcached_server_instance_fetch(memc, y);
+ memcached_server_write_instance_st instance= memcached_server_instance_fetch(memc, y);
if (instance->fd == fds[x].fd)
if (instance->fd == fds[x].fd)
+ {
return instance;
return instance;
+ }
}
}
}
}
}
}