m4: fix multiple output
[awesomized/libmemcached] / libmemcached / initialize_query.cc
index 027b156672cfe547a5b86560c37e4a51573360cf..cef8e575f10f62e101d3d16c466ed0cd2980f2a6 100644 (file)
 
 #include <libmemcached/common.h>
 
-memcached_return_t initialize_query(memcached_st *self)
+memcached_return_t initialize_query(Memcached *self, bool increment_query_id)
 {
-  if (not self)
+  if (self == NULL)
   {
     return MEMCACHED_INVALID_ARGUMENTS;
   }
 
-  self->query_id++;
+  if (increment_query_id)
+  {
+    self->query_id++;
+  }
 
   if (self->state.is_time_for_rebuild)
   {
@@ -55,12 +58,15 @@ memcached_return_t initialize_query(memcached_st *self)
     return memcached_set_error(*self, MEMCACHED_NO_SERVERS, MEMCACHED_AT);
   }
 
+  memcached_error_free(*self);
+  memcached_result_reset(&self->result);
+
   return MEMCACHED_SUCCESS;
 }
 
-memcached_return_t initialize_const_query(const memcached_st *self)
+memcached_return_t initialize_const_query(const Memcached *self)
 {
-  if (not self)
+  if (self == NULL)
   {
     return MEMCACHED_INVALID_ARGUMENTS;
   }