aboutsummaryrefslogtreecommitdiff
path: root/libavutil/tree.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavutil/tree.c')
-rw-r--r--libavutil/tree.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavutil/tree.c b/libavutil/tree.c
index cc366769e5..b821802bc0 100644
--- a/libavutil/tree.c
+++ b/libavutil/tree.c
@@ -32,10 +32,10 @@ const int av_tree_node_size = sizeof(AVTreeNode);
void *av_tree_find(const AVTreeNode *t, void *key, int (*cmp)(void *key, const void *b), void *next[2]){
if(t){
- unsigned int v= cmp(t->elem, key);
+ unsigned int v= cmp(key, t->elem);
if(v){
- if(next) next[(v>>31)^1]= t->elem;
- return av_tree_find(t->child[v>>31], key, cmp, next);
+ if(next) next[v>>31]= t->elem;
+ return av_tree_find(t->child[(v>>31)^1], key, cmp, next);
}else{
if(next){
av_tree_find(t->child[0], key, cmp, next);