X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fflush_buffers.c;h=0a90275792f7e0b6524cedad5caa367c33cb457d;hb=f9f501287ffa6a2c69a9033536d3b6f14db34204;hp=950fa1e8b925ca49ece231674e7e460be94bd2ac;hpb=7c7750f02368b570353ea109f23a0ea26d226e02;p=awesomized%2Flibmemcached diff --git a/libmemcached/flush_buffers.c b/libmemcached/flush_buffers.c index 950fa1e8..0a902757 100644 --- a/libmemcached/flush_buffers.c +++ b/libmemcached/flush_buffers.c @@ -1,21 +1,26 @@ #include "common.h" -memcached_return_t memcached_flush_buffers(memcached_st *mem) +memcached_return_t memcached_flush_buffers(memcached_st *memc) { memcached_return_t ret= MEMCACHED_SUCCESS; - for (uint32_t x= 0; x < mem->number_of_hosts; ++x) - if (mem->hosts[x].write_buffer_offset != 0) + for (uint32_t x= 0; x < memcached_server_count(memc); ++x) + { + memcached_server_write_instance_st instance= + memcached_server_instance_fetch(memc, x); + + if (instance->write_buffer_offset != 0) { - if (mem->hosts[x].fd == -1 && - (ret= memcached_connect(&mem->hosts[x])) != MEMCACHED_SUCCESS) + if (instance->fd == -1 && + (ret= memcached_connect(instance)) != MEMCACHED_SUCCESS) { WATCHPOINT_ERROR(ret); return ret; } - if (memcached_io_write(&mem->hosts[x], NULL, 0, 1) == -1) + if (memcached_io_write(instance, NULL, 0, true) == -1) ret= MEMCACHED_SOME_ERRORS; } + } return ret; }