projects
/
collectd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'collectd-5.5'
[collectd.git]
/
src
/
daemon
/
utils_avltree.c
diff --git
a/src/daemon/utils_avltree.c
b/src/daemon/utils_avltree.c
index
e251975
..
1680c41
100644
(file)
--- a/
src/daemon/utils_avltree.c
+++ b/
src/daemon/utils_avltree.c
@@
-245,7
+245,7
@@
static void rebalance (c_avl_tree_t *t, c_avl_node_t *n)
{
assert (n->right != NULL);
b_bottom = BALANCE (n->right);
{
assert (n->right != NULL);
b_bottom = BALANCE (n->right);
- assert ((b_bottom >= -1)
||
(b_bottom <= 1));
+ assert ((b_bottom >= -1)
&&
(b_bottom <= 1));
if (b_bottom == 1)
n = rotate_right_left (t, n);
else
if (b_bottom == 1)
n = rotate_right_left (t, n);
else
@@
-255,7
+255,7
@@
static void rebalance (c_avl_tree_t *t, c_avl_node_t *n)
{
assert (n->left != NULL);
b_bottom = BALANCE (n->left);
{
assert (n->left != NULL);
b_bottom = BALANCE (n->left);
- assert ((b_bottom >= -1)
||
(b_bottom <= 1));
+ assert ((b_bottom >= -1)
&&
(b_bottom <= 1));
if (b_bottom == -1)
n = rotate_left_right (t, n);
else
if (b_bottom == -1)
n = rotate_left_right (t, n);
else
@@
-485,7
+485,7
@@
c_avl_tree_t *c_avl_create (int (*compare) (const void *, const void *))
if (compare == NULL)
return (NULL);
if (compare == NULL)
return (NULL);
- if ((t =
(c_avl_tree_t *) malloc (sizeof (c_avl_tree_
t))) == NULL)
+ if ((t =
malloc (sizeof (*
t))) == NULL)
return (NULL);
t->root = NULL;
return (NULL);
t->root = NULL;
@@
-509,7
+509,7
@@
int c_avl_insert (c_avl_tree_t *t, void *key, void *value)
c_avl_node_t *nptr;
int cmp;
c_avl_node_t *nptr;
int cmp;
- if ((new =
(c_avl_node_t *) malloc (sizeof (c_avl_node_t
))) == NULL)
+ if ((new =
malloc (sizeof (*new
))) == NULL)
return (-1);
new->key = key;
return (-1);
new->key = key;
@@
-652,6
+652,7
@@
int c_avl_pick (c_avl_tree_t *t, void **key, void **value)
*value = n->value;
free_node (n);
*value = n->value;
free_node (n);
+ --t->size;
rebalance (t, p);
return (0);
rebalance (t, p);
return (0);
@@
-664,10
+665,9
@@
c_avl_iterator_t *c_avl_get_iterator (c_avl_tree_t *t)
if (t == NULL)
return (NULL);
if (t == NULL)
return (NULL);
- iter =
(c_avl_iterator_t *) malloc (sizeof (c_avl_iterator_t
));
+ iter =
calloc (1, sizeof (*iter
));
if (iter == NULL)
return (NULL);
if (iter == NULL)
return (NULL);
- memset (iter, '\0', sizeof (c_avl_iterator_t));
iter->tree = t;
return (iter);
iter->tree = t;
return (iter);