Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Spiers <git@adamspiers.org>2013-01-06 20:58:11 +0400
committerJunio C Hamano <gitster@pobox.com>2013-01-07 02:26:37 +0400
commit512aaf9453cecfa57dddc61aec2132b936b2ff70 (patch)
tree5b10c1da9594fb012bedf00ad2df9d26e4c831d0 /pathspec.c
parent9d67b61f739a1a898bc8c9960047ebff0e9c9d09 (diff)
add.c: extract new die_if_path_beyond_symlink() for reuse
This will be reused by a new git check-ignore command. Also document validate_pathspec(). Signed-off-by: Adam Spiers <git@adamspiers.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'pathspec.c')
-rw-r--r--pathspec.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/pathspec.c b/pathspec.c
index 02d3344460..284f3970a3 100644
--- a/pathspec.c
+++ b/pathspec.c
@@ -87,3 +87,15 @@ const char *check_path_for_gitlink(const char *path)
}
return path;
}
+
+/*
+ * Dies if the given path refers to a file inside a symlinked
+ * directory in the index.
+ */
+void die_if_path_beyond_symlink(const char *path, const char *prefix)
+{
+ if (has_symlink_leading_path(path, strlen(path))) {
+ int len = prefix ? strlen(prefix) : 0;
+ die(_("'%s' is beyond a symbolic link"), path + len);
+ }
+}