attempt to fix #12, #49 and #65
[awesomized/libmemcached] / libmemcached / version.cc
index 514f81080e135dff2a48137d0492f8d90b13cc0e..e779a76971e15a8d2c0449f133e12e25a9883340 100644 (file)
@@ -41,7 +41,7 @@ const char * memcached_lib_version(void)
   return LIBMEMCACHED_VERSION_STRING;
 }
 
-static inline memcached_return_t memcached_version_textual(memcached_st *memc)
+static inline memcached_return_t memcached_version_textual(Memcached *memc)
 {
   libmemcached_io_vector_st vector[]=
   {
@@ -52,7 +52,7 @@ static inline memcached_return_t memcached_version_textual(memcached_st *memc)
   bool errors_happened= false;
   for (uint32_t x= 0; x < memcached_server_count(memc); x++)
   {
-    org::libmemcached::Instance* instance= memcached_instance_fetch(memc, x);
+    memcached_instance_st* instance= memcached_instance_fetch(memc, x);
 
     // Optimization, we only fetch version once.
     if (instance->major_version != UINT8_MAX)
@@ -73,14 +73,13 @@ static inline memcached_return_t memcached_version_textual(memcached_st *memc)
   if (success)
   {
     // Collect the returned items
-    org::libmemcached::Instance* instance;
+    memcached_instance_st* instance;
     memcached_return_t readable_error;
     while ((instance= memcached_io_get_readable_server(memc, readable_error)))
     {
       memcached_return_t rrc= memcached_response(instance, NULL);
       if (memcached_failed(rrc))
       {
-        memcached_io_reset(instance);
         errors_happened= true;
       }
     }
@@ -89,7 +88,7 @@ static inline memcached_return_t memcached_version_textual(memcached_st *memc)
   return errors_happened ? MEMCACHED_SOME_ERRORS : MEMCACHED_SUCCESS;
 }
 
-static inline memcached_return_t memcached_version_binary(memcached_st *memc)
+static inline memcached_return_t memcached_version_binary(Memcached *memc)
 {
   protocol_binary_request_version request= {};
 
@@ -105,7 +104,7 @@ static inline memcached_return_t memcached_version_binary(memcached_st *memc)
   bool errors_happened= false;
   for (uint32_t x= 0; x < memcached_server_count(memc); x++) 
   {
-    org::libmemcached::Instance* instance= memcached_instance_fetch(memc, x);
+    memcached_instance_st* instance= memcached_instance_fetch(memc, x);
 
     initialize_binary_request(instance, request.message.header);
 
@@ -117,7 +116,6 @@ static inline memcached_return_t memcached_version_binary(memcached_st *memc)
     memcached_return_t rrc= memcached_vdo(instance, vector, 1, true);
     if (memcached_failed(rrc))
     {
-      memcached_io_reset(instance);
       errors_happened= true;
       continue;
     }
@@ -128,7 +126,7 @@ static inline memcached_return_t memcached_version_binary(memcached_st *memc)
   if (success)
   {
     // Collect the returned items
-    org::libmemcached::Instance* instance;
+    memcached_instance_st* instance;
     memcached_return_t readable_error;
     while ((instance= memcached_io_get_readable_server(memc, readable_error)))
     {
@@ -136,7 +134,6 @@ static inline memcached_return_t memcached_version_binary(memcached_st *memc)
       memcached_return_t rrc= memcached_response(instance, buffer, sizeof(buffer), NULL);
       if (memcached_failed(rrc))
       {
-        memcached_io_reset(instance);
         errors_happened= true;
       }
     }
@@ -145,7 +142,7 @@ static inline memcached_return_t memcached_version_binary(memcached_st *memc)
   return errors_happened ? MEMCACHED_SOME_ERRORS : MEMCACHED_SUCCESS;
 }
 
-static inline void version_ascii_instance(org::libmemcached::Instance* instance)
+static inline void version_ascii_instance(memcached_instance_st* instance)
 {
   if (instance->major_version != UINT8_MAX)
   {
@@ -158,7 +155,7 @@ static inline void version_ascii_instance(org::libmemcached::Instance* instance)
   }
 }
 
-static inline void version_binary_instance(org::libmemcached::Instance* instance)
+static inline void version_binary_instance(memcached_instance_st* instance)
 {
   if (instance->major_version != UINT8_MAX)
   {
@@ -178,7 +175,7 @@ static inline void version_binary_instance(org::libmemcached::Instance* instance
   }
 }
 
-void memcached_version_instance(org::libmemcached::Instance* instance)
+void memcached_version_instance(memcached_instance_st* instance)
 {
   if (instance)
   {
@@ -202,8 +199,9 @@ void memcached_version_instance(org::libmemcached::Instance* instance)
   }
 }
 
-memcached_return_t memcached_version(memcached_st *memc)
+memcached_return_t memcached_version(memcached_st *shell)
 {
+  Memcached* memc= memcached2Memcached(shell);
   if (memc)
   {
     memcached_return_t rc;