Trying to remove dead branch
[awesomized/libmemcached] / libmemcached / memcached_io.c
index ddca197260f818de70c5e04e6e60a553479f1b8e..0afcc29eaa4756670c25fa525b48d2fd93049fc1 100644 (file)
@@ -112,6 +112,7 @@ ssize_t memcached_io_read(memcached_server_st *ptr,
           switch (errno)
           {
           case EAGAIN:
+          case EINTR: 
             {
               memcached_return rc;
 
@@ -219,20 +220,27 @@ ssize_t memcached_io_write(memcached_server_st *ptr,
 memcached_return memcached_io_close(memcached_server_st *ptr)
 {
   int r;
-  /* in case of death shutdown to avoid blocking at close() */
 
+  if (ptr->fd == -1)
+    return MEMCACHED_SUCCESS;
+
+  /* in case of death shutdown to avoid blocking at close() */
   r= shutdown(ptr->fd, SHUT_RDWR);
 
 #ifdef HAVE_DEBUG
   if (r && errno != ENOTCONN)
   {
+    WATCHPOINT_NUMBER(ptr->fd);
     WATCHPOINT_ERRNO(errno);
     WATCHPOINT_ASSERT(errno);
   }
 #endif
 
   r= close(ptr->fd);
-  WATCHPOINT_ASSERT(r == 0);
+#ifdef HAVE_DEBUG
+  if (r != 0)
+    WATCHPOINT_ERRNO(errno);
+#endif
 
   return MEMCACHED_SUCCESS;
 }
@@ -334,7 +342,8 @@ static ssize_t io_flush(memcached_server_st *ptr,
   }
 
   WATCHPOINT_ASSERT(write_length == 0);
-  WATCHPOINT_ASSERT(return_length == ptr->write_buffer_offset);
+  // Need to study this assert() WATCHPOINT_ASSERT(return_length ==
+  // ptr->write_buffer_offset);
   ptr->write_buffer_offset= 0;
 
   return return_length;