projects
/
collectd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
snmp plugin: Check the return value of csnmp_oid_suffix().
[collectd.git]
/
src
/
utils_avltree.c
diff --git
a/src/utils_avltree.c
b/src/utils_avltree.c
index
6ad0227
..
12310d3
100644
(file)
--- a/
src/utils_avltree.c
+++ b/
src/utils_avltree.c
@@
-264,7
+264,7
@@
static void rebalance (c_avl_tree_t *t, c_avl_node_t *n)
} /* while (n != NULL) */
} /* void rebalance */
} /* while (n != NULL) */
} /* void rebalance */
-static c_avl_node_t *c_avl_node_next (c_avl_
tree_t *t, c_avl_
node_t *n)
+static c_avl_node_t *c_avl_node_next (c_avl_node_t *n)
{
c_avl_node_t *r; /* return node */
{
c_avl_node_t *r; /* return node */
@@
-309,7
+309,7
@@
static c_avl_node_t *c_avl_node_next (c_avl_tree_t *t, c_avl_node_t *n)
return (r);
} /* c_avl_node_t *c_avl_node_next */
return (r);
} /* c_avl_node_t *c_avl_node_next */
-static c_avl_node_t *c_avl_node_prev (c_avl_
tree_t *t, c_avl_
node_t *n)
+static c_avl_node_t *c_avl_node_prev (c_avl_node_t *n)
{
c_avl_node_t *r; /* return node */
{
c_avl_node_t *r; /* return node */
@@
-364,13
+364,13
@@
static int _remove (c_avl_tree_t *t, c_avl_node_t *n)
if (BALANCE (n) > 0) /* left subtree is higher */
{
assert (n->left != NULL);
if (BALANCE (n) > 0) /* left subtree is higher */
{
assert (n->left != NULL);
- r = c_avl_node_prev (
t,
n);
+ r = c_avl_node_prev (n);
}
else /* right subtree is higher */
{
assert (n->right != NULL);
}
else /* right subtree is higher */
{
assert (n->right != NULL);
- r = c_avl_node_next (
t,
n);
+ r = c_avl_node_next (n);
}
assert ((r->left == NULL) || (r->right == NULL));
}
assert ((r->left == NULL) || (r->right == NULL));
@@
-485,6
+485,8
@@
c_avl_tree_t *c_avl_create (int (*compare) (const void *, const void *))
void c_avl_destroy (c_avl_tree_t *t)
{
void c_avl_destroy (c_avl_tree_t *t)
{
+ if (t == NULL)
+ return;
free_node (t->root);
free (t);
}
free_node (t->root);
free (t);
}
@@
-581,6
+583,8
@@
int c_avl_get (c_avl_tree_t *t, const void *key, void **value)
{
c_avl_node_t *n;
{
c_avl_node_t *n;
+ assert (t != NULL);
+
n = search (t, key);
if (n == NULL)
return (-1);
n = search (t, key);
if (n == NULL)
return (-1);
@@
-662,7
+666,7
@@
int c_avl_iterator_next (c_avl_iterator_t *iter, void **key, void **value)
}
else
{
}
else
{
- n = c_avl_node_next (iter->
tree, iter->
node);
+ n = c_avl_node_next (iter->node);
}
if (n == NULL)
}
if (n == NULL)
@@
-691,7
+695,7
@@
int c_avl_iterator_prev (c_avl_iterator_t *iter, void **key, void **value)
}
else
{
}
else
{
- n = c_avl_node_prev (iter->
tree, iter->
node);
+ n = c_avl_node_prev (iter->node);
}
if (n == NULL)
}
if (n == NULL)