int result = tree->compare(data, current->data);
if (result == 0) {
- PTHREAD_MUTEX_UNLOCK(tree);
return current;
} else {
current = (result < 0) ?
}
}
- PTHREAD_MUTEX_UNLOCK(tree);
return NULL;
}
rbnode_t *node;
PTHREAD_MUTEX_LOCK(tree);
- node = rbtree_find(tree, data);
+ node = rbtree_find_internal(tree, data);
if (!node) {
PTHREAD_MUTEX_UNLOCK(tree);
return false;
}
- rbtree_delete_internal(tree, node, false);
+ rbtree_delete_internal(tree, node, true);
PTHREAD_MUTEX_UNLOCK(tree);
return true;