X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fstring.cc;h=ce96b98cba501ef57ff4552ae8045e44d11470ea;hb=b036e172e5839d530bce7c3831a8eaf36d68eca7;hp=1c44e996d680e46e7143463fe51b15aa09e7cf93;hpb=850df1fbab46a5a658c2fd0c35164ef1c60a22d9;p=awesomized%2Flibmemcached diff --git a/libmemcached/string.cc b/libmemcached/string.cc index 1c44e996..ce96b98c 100644 --- a/libmemcached/string.cc +++ b/libmemcached/string.cc @@ -79,7 +79,7 @@ static inline void _init_string(memcached_string_st *self) self->end= self->string= NULL; } -memcached_string_st *memcached_string_create(memcached_st *memc, memcached_string_st *self, size_t initial_size) +memcached_string_st *memcached_string_create(Memcached *memc, memcached_string_st *self, size_t initial_size) { WATCHPOINT_ASSERT(memc); @@ -115,7 +115,7 @@ memcached_string_st *memcached_string_create(memcached_st *memc, memcached_strin return NULL; } - self->options.is_initialized= true; + memcached_set_initialized(self, true); WATCHPOINT_ASSERT(self->string == self->end); @@ -279,16 +279,21 @@ const char *memcached_string_value(const memcached_string_st& self) char *memcached_string_take_value(memcached_string_st *self) { - assert_msg(self, "Invalid memcached_string_st"); - // If we fail at adding the null, we copy and move on - if (memcached_success(memcached_string_append_null(self))) + char* value= NULL; + + if (memcached_string_length(self)) { - return memcached_string_c_copy(self); - } + assert_msg(self, "Invalid memcached_string_st"); + // If we fail at adding the null, we copy and move on + if (memcached_success(memcached_string_append_null(self))) + { + return memcached_string_c_copy(self); + } - char *value= self->string; + value= self->string; - _init_string(self); + _init_string(self); + } return value; }