~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to mysys/my_tree.cc

  • Committer: Brian Aker
  • Date: 2009-10-12 06:15:02 UTC
  • mfrom: (1165.1.178 static-functions)
  • Revision ID: brian@gaz-20091012061502-cds4m0cya7ow8sj7
Merge Stewart

Show diffs side-by-side

added added

removed removed

Lines of Context:
315
315
  return 0;
316
316
}
317
317
 
318
 
 
319
 
void *tree_search(TREE *tree, void *key, void *custom_arg)
320
 
{
321
 
  int cmp;
322
 
  TREE_ELEMENT *element= tree->root;
323
 
 
324
 
  for (;;)
325
 
  {
326
 
    if (element == &tree->null_element)
327
 
      return (void*) 0;
328
 
    if ((cmp= (*tree->compare)(custom_arg, ELEMENT_KEY(tree,element),
329
 
                               key)) == 0)
330
 
      return ELEMENT_KEY(tree,element);
331
 
    if (cmp < 0)
332
 
      element= element->right;
333
 
    else
334
 
      element= element->left;
335
 
  }
336
 
}
337
 
 
338
318
void *tree_search_key(TREE *tree, const void *key,
339
319
                      TREE_ELEMENT **parents, TREE_ELEMENT ***last_pos,
340
320
                      enum ha_rkey_function flag, void *custom_arg)