Fixed up a few more places where we set the error in the memcached root.
[m6w6/libmemcached] / libmemcached / memcached.cc
index 820efa50013fa3af6e338102e98395ffa068f990..a1551cd2632566eb50f7825069855ca292ffd6d7 100644 (file)
@@ -226,19 +226,22 @@ memcached_st *memcached_create(memcached_st *ptr)
 
 memcached_st *memcached(const char *string, size_t length)
 {
-  if (! length || ! string)
+  if ((not length and string) or (length and not string))
   {
     errno= EINVAL;
     return NULL;
   }
 
   memcached_st *self= memcached_create(NULL);
-  if (! self)
+  if (not self)
   {
     errno= ENOMEM;
     return NULL;
   }
 
+  if (not length)
+    return self;
+
   memcached_return_t rc;
   rc= memcached_parse_configuration(self, string, length);