]> mj.ucw.cz Git - libucw.git/blobdiff - lib/binheap.h
Updated all users of the timer interface to pass an explicit timer context.
[libucw.git] / lib / binheap.h
index e6f7afda7954c29cd5eedf96d6132952745e325f..0c6ee5a566a54680e7ca24c211a4791bc5bc01fb 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- *     Sherlock Library -- Binomial Heaps
+ *     UCW Library -- Binomial Heaps
  *
  *     (c) 2003 Martin Mares <mj@ucw.cz>
  *
  *
  *     (c) 2003 Martin Mares <mj@ucw.cz>
  *
@@ -177,8 +177,9 @@ BH_PREFIX(init)(BH_HEAP *heap)
 #define BH_FOR_ALL(bh_px, bh_heap, bh_var)     \
 do {                                           \
   struct bh_node *bh_stack[32];                        \
 #define BH_FOR_ALL(bh_px, bh_heap, bh_var)     \
 do {                                           \
   struct bh_node *bh_stack[32];                        \
-  bh_stack[0] = (bh_heap)->root.first_son;     \
-  uns bh_sp = 1;                               \
+  uns bh_sp = 0;                               \
+  if (bh_stack[0] = (bh_heap)->root.first_son)  \
+    bh_sp++;                                   \
   while (bh_sp) {                              \
     struct bh_node *bh_var = bh_stack[--bh_sp];        \
     if (bh_var->next_sibling)                  \
   while (bh_sp) {                              \
     struct bh_node *bh_var = bh_stack[--bh_sp];        \
     if (bh_var->next_sibling)                  \