Fix for non-Linux platforms.
[awesomized/libmemcached] / libmemcached / result.c
index d7c2fa589d7cd52b66ea6a581243cdc436da59ec..037293e7f79af0c4a7471dcc5aca110996fd4098 100644 (file)
@@ -32,7 +32,6 @@ memcached_result_st *memcached_result_create(const memcached_st *memc,
                                              memcached_result_st *ptr)
 {
   WATCHPOINT_ASSERT(memc);
-  WATCHPOINT_ASSERT(memc->options.is_initialized);
 
   /* Saving malloc calls :) */
   if (ptr)
@@ -54,6 +53,7 @@ memcached_result_st *memcached_result_create(const memcached_st *memc,
   _result_init(ptr, memc);
 
   ptr->root= memc;
+  WATCHPOINT_SET(ptr->value.options.is_initialized= false);
   memcached_string_create(memc, &ptr->value, 0);
   WATCHPOINT_ASSERT_INITIALIZED(&ptr->value);
   WATCHPOINT_ASSERT(ptr->value.string == NULL);
@@ -87,3 +87,10 @@ void memcached_result_free(memcached_result_st *ptr)
     ptr->options.is_initialized= false;
   }
 }
+
+memcached_return_t memcached_result_set_value(memcached_result_st *ptr,
+                                              const char *value,
+                                              size_t length)
+{
+  return memcached_string_append(&ptr->value, value, length);
+}