X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=lib%2Fmemcached_do.c;h=c4bf574f641d8a28d36ce649db884bc20d913c74;hb=8a86b578acc594d37a8638e3e0afba1286c4b6ca;hp=ea0e705e1b5a352261a98b6b90a3acf077ff5777;hpb=5845b33395414c577e0d88cc13a011db55cffa02;p=m6w6%2Flibmemcached diff --git a/lib/memcached_do.c b/lib/memcached_do.c index ea0e705e..c4bf574f 100644 --- a/lib/memcached_do.c +++ b/lib/memcached_do.c @@ -1,26 +1,23 @@ #include "common.h" -memcached_return memcached_do(memcached_st *ptr, unsigned int server_key, char *command, - size_t command_length, char with_flush) +memcached_return memcached_do(memcached_server_st *ptr, char *command, + size_t command_length, uint8_t with_flush) { memcached_return rc; ssize_t sent_length; + WATCHPOINT_ASSERT(command_length); WATCHPOINT_ASSERT(command); - if (ptr->hosts[server_key].cursor_active) - memcached_quit_server(ptr, server_key); - - if ((rc= memcached_connect(ptr, server_key)) != MEMCACHED_SUCCESS) + if ((rc= memcached_connect(ptr)) != MEMCACHED_SUCCESS) return rc; - sent_length= memcached_io_write(ptr, server_key, command, command_length, with_flush); + sent_length= memcached_io_write(ptr, command, command_length, with_flush); if (sent_length == -1 || sent_length != command_length) - { - memcached_quit_server(ptr, server_key); rc= MEMCACHED_WRITE_FAILURE; - } + else + memcached_server_response_increment(ptr); return rc; }