summaryrefslogtreecommitdiff
path: root/update-index.c
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <junkio@cox.net>2006-05-24 11:04:16 -0700
committerLibravatar Junio C Hamano <junkio@cox.net>2006-05-24 11:04:16 -0700
commit376bb3a352d6512a318706c2fba5737ffd7cc92b (patch)
tree52166f7d99a58a1c79b4078d6cbba8961bc361d9 /update-index.c
parent--summary output should print immediately after stats. (diff)
parentAdd builtin "git rm" command (diff)
downloadtgif-376bb3a352d6512a318706c2fba5737ffd7cc92b.tar.xz
Merge branch 'lt/dirwalk'
This makes 'git add' and 'git rm' built-ins. * lt/dirwalk: Add builtin "git rm" command Move pathspec matching from builtin-add.c into dir.c Prevent bogus paths from being added to the index. builtin-add: fix unmatched pathspec warnings. Remove old "git-add.sh" remnants builtin-add: warn on unmatched pathspecs Do "git add" as a builtin Clean up git-ls-file directory walking library interface libify git-ls-files directory traversal
Diffstat (limited to 'update-index.c')
-rw-r--r--update-index.c64
1 files changed, 0 insertions, 64 deletions
diff --git a/update-index.c b/update-index.c
index 7d6de821e2..5854d11fd9 100644
--- a/update-index.c
+++ b/update-index.c
@@ -120,70 +120,6 @@ static int add_file_to_cache(const char *path)
return 0;
}
-/*
- * We fundamentally don't like some paths: we don't want
- * dot or dot-dot anywhere, and for obvious reasons don't
- * want to recurse into ".git" either.
- *
- * Also, we don't want double slashes or slashes at the
- * end that can make pathnames ambiguous.
- */
-static int verify_dotfile(const char *rest)
-{
- /*
- * The first character was '.', but that
- * has already been discarded, we now test
- * the rest.
- */
- switch (*rest) {
- /* "." is not allowed */
- case '\0': case '/':
- return 0;
-
- /*
- * ".git" followed by NUL or slash is bad. This
- * shares the path end test with the ".." case.
- */
- case 'g':
- if (rest[1] != 'i')
- break;
- if (rest[2] != 't')
- break;
- rest += 2;
- /* fallthrough */
- case '.':
- if (rest[1] == '\0' || rest[1] == '/')
- return 0;
- }
- return 1;
-}
-
-static int verify_path(const char *path)
-{
- char c;
-
- goto inside;
- for (;;) {
- if (!c)
- return 1;
- if (c == '/') {
-inside:
- c = *path++;
- switch (c) {
- default:
- continue;
- case '/': case '\0':
- break;
- case '.':
- if (verify_dotfile(path))
- continue;
- }
- return 0;
- }
- c = *path++;
- }
-}
-
static int add_cacheinfo(unsigned int mode, const unsigned char *sha1,
const char *path, int stage)
{