]> granicus.if.org Git - apache/commitdiff
make this more gdb-friendly. no functional change.
authorCliff Woolley <jwoolley@apache.org>
Wed, 14 Aug 2002 00:46:50 +0000 (00:46 +0000)
committerCliff Woolley <jwoolley@apache.org>
Wed, 14 Aug 2002 00:46:50 +0000 (00:46 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96371 13f79535-47bb-0310-9956-ffa450edef68

modules/experimental/cache_pqueue.c

index 10ddd3a8eaf96d6412b5482532d01a3147049ce0..144e7c65c5b87604e45979756b504817a55525c0 100644 (file)
@@ -304,13 +304,21 @@ void cache_pq_print(cache_pqueue_t *q,
 
 static int cache_pq_subtree_is_valid(cache_pqueue_t *q, int pos)
 {
-    if ((left(pos) <q->size &&(q->pri(q->d[pos]) < q->pri(q->d[left(pos)]))) ||
-        (right(pos)<q->size &&(q->pri(q->d[pos]) < q->pri(q->d[right(pos)]))))
-    {
-        return 0;
+    if (left(pos) < q->size) {
+        /* has a left child */
+        if (q->pri(q->d[pos]) < q->pri(q->d[left(pos)]))
+            return 0;
+        if (!cache_pq_subtree_is_valid(q, left(pos)))
+            return 0;
+    }
+    if (right(pos) < q->size) {
+        /* has a right child */
+        if (q->pri(q->d[pos]) < q->pri(q->d[right(pos)]))
+            return 0;
+        if (!cache_pq_subtree_is_valid(q, right(pos)))
+            return 0;
     }
-    return ((left(pos)>=q->size ||(cache_pq_subtree_is_valid(q, left(pos)))) &&
-            (right(pos)>=q->size||(cache_pq_subtree_is_valid(q, right(pos)))));
+    return 1;
 }
 
 int cache_pq_is_valid(cache_pqueue_t *q)