aboutsummaryrefslogtreecommitdiff
path: root/builtin-ls-tree.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@osdl.org>2006-07-28 22:44:25 -0700
committerJunio C Hamano <junkio@cox.net>2006-07-29 01:34:07 -0700
commita633fca0c056aa221d23493c276d3713191621b3 (patch)
tree6dcb10b511201ad3e83f736e7eba214e301e5805 /builtin-ls-tree.c
parentdb6296a566eb1a8007a84330a911b38055720743 (diff)
downloadgit-a633fca0c056aa221d23493c276d3713191621b3.tar.gz
git-a633fca0c056aa221d23493c276d3713191621b3.tar.xz
Call setup_git_directory() much earlier
This changes the calling convention of built-in commands and passes the "prefix" (i.e. pathname of $PWD relative to the project root level) down to them. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'builtin-ls-tree.c')
-rw-r--r--builtin-ls-tree.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/builtin-ls-tree.c b/builtin-ls-tree.c
index b8d0d88ba..261147fdb 100644
--- a/builtin-ls-tree.c
+++ b/builtin-ls-tree.c
@@ -18,7 +18,7 @@ static int abbrev = 0;
static int ls_options = 0;
static const char **pathspec;
static int chomp_prefix = 0;
-static const char *prefix;
+static const char *ls_tree_prefix;
static const char ls_tree_usage[] =
"git-ls-tree [-d] [-r] [-t] [-z] [--name-only] [--name-status] [--full-name] [--abbrev[=<n>]] <tree-ish> [path...]";
@@ -71,7 +71,7 @@ static int show_tree(const unsigned char *sha1, const char *base, int baselen,
return 0;
if (chomp_prefix &&
- (baselen < chomp_prefix || memcmp(prefix, base, chomp_prefix)))
+ (baselen < chomp_prefix || memcmp(ls_tree_prefix, base, chomp_prefix)))
return 0;
if (!(ls_options & LS_NAME_ONLY))
@@ -85,13 +85,13 @@ static int show_tree(const unsigned char *sha1, const char *base, int baselen,
return retval;
}
-int cmd_ls_tree(int argc, const char **argv, char **envp)
+int cmd_ls_tree(int argc, const char **argv, const char *prefix)
{
unsigned char sha1[20];
struct tree *tree;
- prefix = setup_git_directory();
git_config(git_default_config);
+ ls_tree_prefix = prefix;
if (prefix && *prefix)
chomp_prefix = strlen(prefix);
while (1 < argc && argv[1][0] == '-') {