Pulling in Mark's fixes for memory leaks in memslap
[m6w6/libmemcached] / libmemcached / memcached_hash.c
index 8d269faa69cac9672260391a3401e930686f0e66..c0e928a10cd90e86e7f32613e8762465272e46f2 100644 (file)
@@ -110,15 +110,16 @@ unsigned int dispatch_host(memcached_st *ptr, uint32_t hash)
   case MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA:
     {
       int num= ptr->number_of_hosts * MEMCACHED_POINTS_PER_SERVER;
+      WATCHPOINT_ASSERT(ptr->continuum);
 
       hash= hash;
-      struct continuum_item *begin, *end, *left, *right, *middle;
+      memcached_continuum_item_st *begin, *end, *left, *right, *middle;
       begin= left= ptr->continuum;
       end= right= ptr->continuum + (num - 1);
 
       while (1)
       {
-        struct continuum_item *rmiddle;
+        memcached_continuum_item_st *rmiddle;
 
         middle = left + (right - left) / 2;
 
@@ -175,7 +176,7 @@ unsigned int dispatch_host(memcached_st *ptr, uint32_t hash)
     int num = ptr->number_of_hosts * MEMCACHED_POINTS_PER_SERVER;
 
     hash = hash;
-    struct continuum_item *begin, *end, *left, *right, *middle;
+    memcached_continuum_item_st *begin, *end, *left, *right, *middle;
     begin = left = ptr->continuum;
     end = right = ptr->continuum + (num - 1);
     while(1)
@@ -189,7 +190,7 @@ unsigned int dispatch_host(memcached_st *ptr, uint32_t hash)
       {
         return end->index;
       }
-      struct continuum_item *rmiddle = middle+1;
+      memcached_continuum_item_st *rmiddle = middle+1;
       if(hash<rmiddle->value && hash>=middle->value)
         return middle->index;