diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2021-09-25 15:19:22 -0400 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2021-09-26 17:46:07 -0400 |
commit | f5a9f0a2587f4fa2d02ee74b0522a0fd99fabe98 (patch) | |
tree | fde3ffda01cf48174420caeff10a19e6a96a7453 | |
parent | 136901086ecfdd2b5cc106782310355a9c0b1a9a (diff) | |
download | libgit2-f5a9f0a2587f4fa2d02ee74b0522a0fd99fabe98.tar.gz |
attr_file: don't validate workdir paths in attr lookups
When looking up attributes for a file, we construct an absolute path
to the queried file within the working directory so that we can accept
both absolute paths and working directory relative paths. We then trim
the leading working directory path to give us an in-repo path.
Since we only want the in-repo path to look up attributes - and not to
read it from disk - we don't need to validate its length.
-rw-r--r-- | src/attr_file.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/attr_file.c b/src/attr_file.c index 694967a1c..4a0d66e92 100644 --- a/src/attr_file.c +++ b/src/attr_file.c @@ -561,8 +561,7 @@ int git_attr_path__init( /* build full path as best we can */ git_buf_init(&info->full, 0); - if (git_path_join_unrooted(&info->full, path, base, &root) < 0 || - git_path_validate_workdir_buf(repo, &info->full) < 0) + if (git_path_join_unrooted(&info->full, path, base, &root) < 0) return -1; info->path = info->full.ptr + root; |