X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fflush_buffers.c;h=649db983ec65295033058e81871126959bc53ac6;hb=3dee67d04099cc5e2986ed94aa612f429f54d6fb;hp=950fa1e8b925ca49ece231674e7e460be94bd2ac;hpb=7c7750f02368b570353ea109f23a0ea26d226e02;p=awesomized%2Flibmemcached diff --git a/libmemcached/flush_buffers.c b/libmemcached/flush_buffers.c index 950fa1e8..649db983 100644 --- a/libmemcached/flush_buffers.c +++ b/libmemcached/flush_buffers.c @@ -1,21 +1,29 @@ #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; }