diff options
Diffstat (limited to 'libavutil/tree.c')
-rw-r--r-- | libavutil/tree.c | 6 |
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); |