X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/61ad789615c7b04790836c7d580ef9d26241138c..248b2a21c9e6be98e6b569b9af0d58dde6c52c34:/examples/msg/dht-pastry/dht-pastry.c diff --git a/examples/msg/dht-pastry/dht-pastry.c b/examples/msg/dht-pastry/dht-pastry.c index f7f0ccaa40..c19cd35798 100644 --- a/examples/msg/dht-pastry/dht-pastry.c +++ b/examples/msg/dht-pastry/dht-pastry.c @@ -378,16 +378,13 @@ static void handle_task(node_t node, msg_task_t task) { // add lower elements j = NAMESPACE_SIZE/2-1; for (i=NAMESPACE_SIZE/2-1; i>=0; i--) { - if (min<0) { + if (min < 0 || curr_namespace_set[j] > task_namespace_set[min]) { node->namespace_set[i] = curr_namespace_set[j]; j--; } else if (curr_namespace_set[j] == task_namespace_set[min]) { node->namespace_set[i] = curr_namespace_set[j]; j--; min--; - } else if (curr_namespace_set[j] > task_namespace_set[min]) { - node->namespace_set[i] = curr_namespace_set[j]; - j--; } else { node->namespace_set[i] = task_namespace_set[min]; min--; @@ -401,19 +398,16 @@ static void handle_task(node_t node, msg_task_t task) { node->namespace_set[i] = curr_namespace_set[j]; j++; } else if (max >= 0){ - if (curr_namespace_set[j] == -1) { + if (curr_namespace_set[j] == -1 || curr_namespace_set[j] > task_namespace_set[max]) { node->namespace_set[i] = task_namespace_set[max]; max++; } else if (curr_namespace_set[j] == task_namespace_set[max]) { node->namespace_set[i] = curr_namespace_set[j]; j++; max++; - } else if (curr_namespace_set[j] < task_namespace_set[max]) { + } else { node->namespace_set[i] = curr_namespace_set[j]; j++; - } else { - node->namespace_set[i] = task_namespace_set[max]; - max++; } } }