Subversion Repositories PlanixRsrch.SVN

Rev

Rev 40 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 40 Rev 451
Line 33... Line 33...
33
 * @param data Element to get
33
 * @param data Element to get
34
 * @return pointer to element or NULL if not found. 
34
 * @return pointer to element or NULL if not found. 
35
 */ 
35
 */ 
36
void * mavl_get(struct mavl *t ,const void *data)
36
void * mavl_get(struct mavl *t ,const void *data)
37
{
37
{
38
	struct mavlnode *n = t->root;
38
	struct mavlnode *n;
39
	while(n){
-
 
40
		int rc=t->cmp(data,mavlnode_dataptr(n));
39
	n = mavlnode_get(t,data);
41
		if (rc==0)
40
	if (n)
42
			return mavlnode_dataptr(n);
41
		return mavlnode_dataptr(n);
43
		if (rc<0)
-
 
44
			n=n->s[0];
-
 
45
		else
-
 
46
			n=n->s[1];
-
 
47
	}
-
 
48
	return NULL;
42
	return NULL;
49
}
43
}
50
 
44