From e74747169d6354700f4f7e7035ae5cdfe8d7985f Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sat, 25 Oct 2003 11:48:06 +0000 Subject: [PATCH] tree.c optimizations git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@776 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/src/lib/tree.c | 3 +++ bacula/src/lib/tree.h | 10 ++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/bacula/src/lib/tree.c b/bacula/src/lib/tree.c index 3ca5b14692..de1e7f25e9 100755 --- a/bacula/src/lib/tree.c +++ b/bacula/src/lib/tree.c @@ -310,6 +310,8 @@ item_link: return; } +#ifdef SLOW_WAY +/* Moved to tree.h to eliminate subroutine call */ TREE_NODE *first_tree_node(TREE_ROOT *root) { return root->first; @@ -319,6 +321,7 @@ TREE_NODE *next_tree_node(TREE_NODE *node) { return node->next; } +#endif void print_tree(char *path, TREE_NODE *tree) diff --git a/bacula/src/lib/tree.h b/bacula/src/lib/tree.h index 608dd3b90b..e92c567216 100644 --- a/bacula/src/lib/tree.h +++ b/bacula/src/lib/tree.h @@ -85,11 +85,17 @@ TREE_NODE *new_tree_node(TREE_ROOT *root, int type); TREE_NODE *insert_tree_node(char *fname, TREE_NODE *node, TREE_ROOT *root, TREE_NODE *parent); TREE_NODE *make_tree_path(char *path, TREE_ROOT *root); -TREE_NODE *first_tree_node(TREE_ROOT *root); -TREE_NODE *next_tree_node(TREE_NODE *node); TREE_NODE *tree_cwd(char *path, TREE_ROOT *root, TREE_NODE *node); TREE_NODE *tree_relcwd(char *path, TREE_ROOT *root, TREE_NODE *node); void append_tree_node(char *path, TREE_NODE *node, TREE_ROOT *root, TREE_NODE *parent); void print_tree(char *path, TREE_NODE *root); void free_tree(TREE_ROOT *root); int tree_getpath(TREE_NODE *node, char *buf, int buf_size); + +#ifdef SLOW_WAY +TREE_NODE *first_tree_node(TREE_ROOT *root); +TREE_NODE *next_tree_node(TREE_NODE *node); +#else + #define first_tree_node(r) (r)->first + #define next_tree_node(n) (n)->next +#endif -- 2.39.2