aboutsummaryrefslogtreecommitdiffstats
path: root/tree-walk.c
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2019-12-04 21:52:10 +0100
committerJohannes Schindelin <johannes.schindelin@gmx.de>2019-12-06 16:27:36 +0100
commitbdfef0492cada3fb36f454804796bf12c79a7136 (patch)
treec79527a14ab1371d714bd600e91fc60bcde0edcd /tree-walk.c
parentGit 2.17.2 (diff)
parentGit 2.16.6 (diff)
downloadgit-bdfef0492cada3fb36f454804796bf12c79a7136.tar.gz
git-bdfef0492cada3fb36f454804796bf12c79a7136.zip
Sync with 2.16.6
* maint-2.16: (31 commits) Git 2.16.6 test-drop-caches: use `has_dos_drive_prefix()` Git 2.15.4 Git 2.14.6 mingw: handle `subst`-ed "DOS drives" mingw: refuse to access paths with trailing spaces or periods mingw: refuse to access paths with illegal characters unpack-trees: let merged_entry() pass through do_add_entry()'s errors quote-stress-test: offer to test quoting arguments for MSYS2 sh t6130/t9350: prepare for stringent Win32 path validation quote-stress-test: allow skipping some trials quote-stress-test: accept arguments to test via the command-line tests: add a helper to stress test argument quoting mingw: fix quoting of arguments Disallow dubiously-nested submodule git directories protect_ntfs: turn on NTFS protection by default path: also guard `.gitmodules` against NTFS Alternate Data Streams is_ntfs_dotgit(): speed it up mingw: disallow backslash characters in tree objects' file names path: safeguard `.git` against NTFS Alternate Streams Accesses ...
Diffstat (limited to 'tree-walk.c')
-rw-r--r--tree-walk.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/tree-walk.c b/tree-walk.c
index 63a87ed666..3966b0ae44 100644
--- a/tree-walk.c
+++ b/tree-walk.c
@@ -41,6 +41,12 @@ static int decode_tree_entry(struct tree_desc *desc, const char *buf, unsigned l
strbuf_addstr(err, _("empty filename in tree entry"));
return -1;
}
+#ifdef GIT_WINDOWS_NATIVE
+ if (protect_ntfs && strchr(path, '\\')) {
+ strbuf_addf(err, _("filename in tree entry contains backslash: '%s'"), path);
+ return -1;
+ }
+#endif
len = strlen(path) + 1;
/* Initialize the descriptor entry */