Enable assert.
[m6w6/libmemcached] / libmemcached / io.cc
index 06aa57c16f00f73813cc7a5d09c34b797b42f54b..ed33f05a2e6ba4d94ba7d74774456c9c18a93e2a 100644 (file)
@@ -178,7 +178,7 @@ static memcached_return_t io_wait(memcached_server_write_instance_st ptr,
  */
   if (read_or_write == MEM_WRITE)
   {
-    if (memcached_fatal(memcached_purge(ptr)))
+    if (memcached_purge(ptr) == false)
     {
       return MEMCACHED_FAILURE;
     }
@@ -276,9 +276,8 @@ static bool io_flush(memcached_server_write_instance_st ptr,
  */
   {
     WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
-    memcached_return_t rc= memcached_purge(ptr);
 
-    if (rc != MEMCACHED_SUCCESS and rc != MEMCACHED_STORED)
+    if (memcached_purge(ptr) == false)
     {
       return false;
     }
@@ -532,9 +531,9 @@ memcached_return_t memcached_io_slurp(memcached_server_write_instance_st ptr)
         /* fall through */
 
       case ENOTCONN: // Programmer Error
-        WATCHPOINT_ASSERT(0);
+        assert(0);
       case ENOTSOCK:
-        WATCHPOINT_ASSERT(0);
+        assert(0);
       case EBADF:
         assert_msg(ptr->fd != INVALID_SOCKET, "Invalid socket state");
       case EINVAL:
@@ -553,7 +552,7 @@ static bool _io_write(memcached_server_write_instance_st ptr,
                       const void *buffer, size_t length, bool with_flush,
                       size_t& written)
 {
-  WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
+  assert(ptr->fd != INVALID_SOCKET);
   assert(memcached_is_udp(ptr->root) == false);
 
   const char *buffer_ptr= static_cast<const char *>(buffer);
@@ -621,20 +620,22 @@ ssize_t memcached_io_write(memcached_server_write_instance_st ptr,
   return ssize_t(written);
 }
 
-ssize_t memcached_io_writev(memcached_server_write_instance_st ptr,
+bool memcached_io_writev(memcached_server_write_instance_st ptr,
                             libmemcached_io_vector_st vector[],
                             const size_t number_of, const bool with_flush)
 {
+  ssize_t complete_total= 0;
   ssize_t total= 0;
 
   for (size_t x= 0; x < number_of; x++, vector++)
   {
+    complete_total+= vector->length;
     if (vector->length)
     {
       size_t written;
       if ((_io_write(ptr, vector->buffer, vector->length, false, written)) == false)
       {
-        return -1;
+        return false;
       }
       total+= written;
     }
@@ -644,11 +645,11 @@ ssize_t memcached_io_writev(memcached_server_write_instance_st ptr,
   {
     if (memcached_io_write(ptr) == false)
     {
-      return -1;
+      return false;
     }
   }
 
-  return total;
+  return (complete_total == total);
 }