X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=libmemcached%2Futil%2Fping.cc;fp=libmemcached%2Futil%2Fping.cc;h=839810d4d7478c530cad35811918a022abe42333;hb=12a07e58df95bb8dbe167e4157b29c910177ade8;hp=52489b95fdef180a4fd97076bb2d04cb19a96be7;hpb=06b419b10f9a86ebc584949162c7d81eab061e8a;p=awesomized%2Flibmemcached diff --git a/libmemcached/util/ping.cc b/libmemcached/util/ping.cc index 52489b95..839810d4 100644 --- a/libmemcached/util/ping.cc +++ b/libmemcached/util/ping.cc @@ -43,7 +43,16 @@ bool libmemcached_util_ping(const char *hostname, in_port_t port, memcached_return_t *ret) { + memcached_return_t unused; + if (not ret) + ret= &unused; + memcached_st *memc_ptr= memcached_create(NULL); + if (not memc_ptr) + { + *ret= MEMCACHED_MEMORY_ALLOCATION_FAILURE; + return false; + } memcached_return_t rc= memcached_server_add(memc_ptr, hostname, port); if (memcached_success(rc)) @@ -63,10 +72,7 @@ bool libmemcached_util_ping(const char *hostname, in_port_t port, memcached_retu } memcached_free(memc_ptr); - if (ret) - { - *ret= rc; - } + *ret= rc; return memcached_success(rc); }