X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fdelete.cc;h=1ae891a7bea073a4b1dda5763de5b6126faf6011;hb=9fd31c03436acf24c593dc3a77c905eb137ef570;hp=1005cb90987d46ab442cf3438e56c8c5b59df7ab;hpb=ae6bc7501efd5aeaaee92dabe2da0ec2d1625c5b;p=awesomized%2Flibmemcached diff --git a/libmemcached/delete.cc b/libmemcached/delete.cc index 1005cb90..1ae891a7 100644 --- a/libmemcached/delete.cc +++ b/libmemcached/delete.cc @@ -158,6 +158,7 @@ memcached_return_t memcached_delete_by_key(memcached_st *ptr, { if (send_length > MAX_UDP_DATAGRAM_LENGTH - UDP_DATAGRAM_HEADER_LENGTH) return MEMCACHED_WRITE_FAILURE; + if (send_length + instance->write_buffer_offset > MAX_UDP_DATAGRAM_LENGTH) memcached_io_write(instance, NULL, 0, true); } @@ -216,6 +217,7 @@ static inline memcached_return_t binary_delete(memcached_st *ptr, size_t cmd_size= sizeof(request.bytes) + key_length; if (cmd_size > MAX_UDP_DATAGRAM_LENGTH - UDP_DATAGRAM_HEADER_LENGTH) return MEMCACHED_WRITE_FAILURE; + if (cmd_size + instance->write_buffer_offset > MAX_UDP_DATAGRAM_LENGTH) memcached_io_write(instance, NULL, 0, true); }