Merge in additional documentation updates.
[awesomized/libmemcached] / libmemcached / string.c
index f708f8d4ae3d66b17a36fbc3af41096606ded25e..b5badc5eff8bb23f970fdd9d5f262cd9ecb60324 100644 (file)
@@ -32,7 +32,9 @@ inline static memcached_return_t _string_check(memcached_string_st *string, size
     new_value= libmemcached_realloc(string->root, string->string, new_size);
 
     if (new_value == NULL)
+    {
       return MEMCACHED_MEMORY_ALLOCATION_FAILURE;
+    }
 
     string->string= new_value;
     string->end= string->string + current_offset;
@@ -73,14 +75,19 @@ memcached_string_st *memcached_string_create(const memcached_st *memc, memcached
 
     self->options.is_allocated= true;
   }
-  self->root= memc;
+  self->root= (memcached_st *)memc;
 
   _init_string(self);
 
   rc=  _string_check(self, initial_size);
   if (rc != MEMCACHED_SUCCESS)
   {
+    if (rc == MEMCACHED_MEMORY_ALLOCATION_FAILURE)
+    {
+      memcached_set_errno(self->root, errno, NULL);
+    }
     libmemcached_free(memc, self);
+
     return NULL;
   }
 
@@ -99,7 +106,9 @@ memcached_return_t memcached_string_append_character(memcached_string_st *string
   rc=  _string_check(string, 1);
 
   if (rc != MEMCACHED_SUCCESS)
+  {
     return rc;
+  }
 
   *string->end= character;
   string->end++;
@@ -115,7 +124,9 @@ memcached_return_t memcached_string_append(memcached_string_st *string,
   rc= _string_check(string, length);
 
   if (rc != MEMCACHED_SUCCESS)
+  {
     return rc;
+  }
 
   WATCHPOINT_ASSERT(length <= string->current_size);
   WATCHPOINT_ASSERT(string->string);