X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fio.cc;h=13c8cf315c38c1cc9e9a8d945371f995f5d495a6;hb=0246c3f543a3aff173a68db275ad64852410cc2d;hp=e246f3ec50d4165eb812e25829bff1b24055c3c1;hpb=7fc1ce1d52601c1ba1d8e7ff0035a7243eaf14c3;p=awesomized%2Flibmemcached diff --git a/libmemcached/io.cc b/libmemcached/io.cc index e246f3ec..13c8cf31 100644 --- a/libmemcached/io.cc +++ b/libmemcached/io.cc @@ -70,7 +70,6 @@ static bool repack_input_buffer(memcached_instance_st* instance) */ memmove(instance->read_buffer, instance->read_ptr, instance->read_buffer_length); instance->read_ptr= instance->read_buffer; - instance->read_data_length= instance->read_buffer_length; } /* There is room in the buffer, try to fill it! */ @@ -80,8 +79,8 @@ static bool repack_input_buffer(memcached_instance_st* instance) /* Just try a single read to grab what's available */ ssize_t nr; if ((nr= ::recv(instance->fd, - instance->read_ptr + instance->read_data_length, - MEMCACHED_MAX_BUFFER - instance->read_data_length, + instance->read_ptr + instance->read_buffer_length, + MEMCACHED_MAX_BUFFER - instance->read_buffer_length, MSG_NOSIGNAL)) <= 0) { if (nr == 0) @@ -113,7 +112,6 @@ static bool repack_input_buffer(memcached_instance_st* instance) } else // We read data, append to our read buffer { - instance->read_data_length+= size_t(nr); instance->read_buffer_length+= size_t(nr); return true; @@ -456,8 +454,10 @@ static memcached_return_t _io_fill(memcached_instance_st* instance) case ENOTCONN: // Programmer Error WATCHPOINT_ASSERT(0); + // fall through case ENOTSOCK: WATCHPOINT_ASSERT(0); + // fall through case EBADF: assert_msg(instance->fd != INVALID_SOCKET, "Programmer error, invalid socket"); /* fall through */ @@ -491,7 +491,6 @@ static memcached_return_t _io_fill(memcached_instance_st* instance) } while (data_read <= 0); instance->io_bytes_sent= 0; - instance->read_data_length= (size_t) data_read; instance->read_buffer_length= (size_t) data_read; instance->read_ptr= instance->read_buffer; @@ -590,9 +589,9 @@ memcached_return_t memcached_io_slurp(memcached_instance_st* instance) /* fall through */ case ENOTCONN: // Programmer Error - assert(0); case ENOTSOCK: assert(0); + /* fall through */ case EBADF: assert_msg(instance->fd != INVALID_SOCKET, "Invalid socket state"); /* fall through */