32/64 bit cleanup issue in tests.
[awesomized/libmemcached] / libmemcached / server.c
index 8616657c826cc1a5ce91ed2c0dedabdbc01e2125..0d343f1d0c38460195d4c00f2fdcfbe97d118a26 100644 (file)
@@ -115,15 +115,17 @@ memcached_return_t memcached_server_cursor(memcached_st *ptr,
 {
   uint32_t y;
 
-  for (y= 0; y < ptr->number_of_hosts; y++)
+  for (y= 0; y < memcached_server_count(ptr); y++)
   {
     uint32_t x;
+    memcached_server_instance_st *instance=
+      memcached_server_instance_fetch(ptr, y);
 
     for (x= 0; x < number_of_callbacks; x++)
     {
       unsigned int iferror;
 
-      iferror= (*callback[x])(ptr, &ptr->hosts[y], context);
+      iferror= (*callback[x])(ptr, instance, context);
 
       if (iferror)
         continue;
@@ -136,13 +138,14 @@ memcached_return_t memcached_server_cursor(memcached_st *ptr,
 memcached_server_st *memcached_server_by_key(memcached_st *ptr,  const char *key, size_t key_length, memcached_return_t *error)
 {
   uint32_t server_key;
+  memcached_server_instance_st *instance;
 
   *error= memcached_validate_key_length(key_length,
                                         ptr->flags.binary_protocol);
   unlikely (*error != MEMCACHED_SUCCESS)
     return NULL;
 
-  unlikely (ptr->number_of_hosts == 0)
+  unlikely (memcached_server_count(ptr) == 0)
   {
     *error= MEMCACHED_NO_SERVERS;
     return NULL;
@@ -155,17 +158,17 @@ memcached_server_st *memcached_server_by_key(memcached_st *ptr,  const char *key
   }
 
   server_key= memcached_generate_hash(ptr, key, key_length);
+  instance= memcached_server_instance_fetch(ptr, server_key);
 
-  return memcached_server_clone(NULL, &ptr->hosts[server_key]);
+  return memcached_server_clone(NULL, instance);
 
 }
 
 const char *memcached_server_error(memcached_server_st *ptr)
 {
-  if (ptr)
-    return ptr->cached_server_error;
-  else
-    return NULL;
+  return ptr 
+    ?  ptr->cached_server_error
+    : NULL;
 }
 
 void memcached_server_error_reset(memcached_server_st *ptr)
@@ -180,10 +183,9 @@ memcached_server_st *memcached_server_get_last_disconnect(memcached_st *ptr)
 
 uint32_t memcached_server_list_count(memcached_server_st *ptr)
 {
-  if (ptr == NULL)
-    return 0;
-
-  return memcached_servers_count(ptr);
+  return (ptr == NULL)
+    ? 0
+    : memcached_servers_count(ptr);
 }
 
 void memcached_server_list_free(memcached_server_st *ptr)