X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fstats.c;h=45b530e491cbfab745576ec6c34f5bd742a6aecf;hb=2a1e29bce497c25fad73b9d74db4a3daf74413b5;hp=83d342a1f096559cc66d5a66be5e124415783d7c;hpb=3dee67d04099cc5e2986ed94aa612f429f54d6fb;p=m6w6%2Flibmemcached diff --git a/libmemcached/stats.c b/libmemcached/stats.c index 83d342a1..45b530e4 100644 --- a/libmemcached/stats.c +++ b/libmemcached/stats.c @@ -405,15 +405,16 @@ memcached_stat_st *memcached_stat(memcached_st *self, char *args, memcached_retu memcached_return_t rc; memcached_stat_st *stats; - if (! self) + if ((rc= initialize_query(self)) != MEMCACHED_SUCCESS) { - WATCHPOINT_ASSERT(self); + if (error) + *error= rc; + return NULL; } WATCHPOINT_ASSERT(error); - unlikely (self->flags.use_udp) { if (error) @@ -432,6 +433,7 @@ memcached_stat_st *memcached_stat(memcached_st *self, char *args, memcached_retu return NULL; } + WATCHPOINT_ASSERT(rc == MEMCACHED_SUCCESS); rc= MEMCACHED_SUCCESS; for (uint32_t x= 0; x < memcached_server_count(self); x++) { @@ -467,7 +469,6 @@ memcached_stat_st *memcached_stat(memcached_st *self, char *args, memcached_retu memcached_return_t memcached_stat_servername(memcached_stat_st *memc_stat, char *args, const char *hostname, in_port_t port) { - memcached_return_t rc; memcached_st memc; memcached_st *memc_ptr; memcached_server_write_instance_st instance; @@ -475,10 +476,17 @@ memcached_return_t memcached_stat_servername(memcached_stat_st *memc_stat, char memset(memc_stat, 0, sizeof(memcached_stat_st)); memc_ptr= memcached_create(&memc); - WATCHPOINT_ASSERT(memc_ptr); + if (! memc_ptr) + return MEMCACHED_MEMORY_ALLOCATION_FAILURE; memcached_server_add(&memc, hostname, port); + memcached_return_t rc; + if ((rc= initialize_query(memc_ptr)) != MEMCACHED_SUCCESS) + { + return rc; + } + instance= memcached_server_instance_fetch(memc_ptr, 0); if (memc.flags.binary_protocol)