diff options
author | Jeff King <peff@peff.net> | 2012-08-21 02:26:07 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-08-21 14:46:47 -0700 |
commit | 6966073102170171da4c25a4038bbd143fa6a75b (patch) | |
tree | f68b9b41c6d15cbccf8da69bd703e4272e607aae /dir.c | |
parent | ba8bd8300a544959159f6bd3a7e03ac54f85ea3a (diff) | |
download | git-6966073102170171da4c25a4038bbd143fa6a75b.tar.gz |
gitignore: report access errors of exclude files
When we try to access gitignore files, we check for their
existence with a call to "access". We silently ignore
missing files. However, if a file is not readable, this may
be a configuration error; let's warn the user.
For $GIT_DIR/info/excludes or core.excludesfile, we can just
use access_or_warn. However, for per-directory files we
actually try to open them, so we must add a custom warning.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'dir.c')
-rw-r--r-- | dir.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -397,6 +397,8 @@ int add_excludes_from_file_to_list(const char *fname, fd = open(fname, O_RDONLY); if (fd < 0 || fstat(fd, &st) < 0) { + if (errno != ENOENT) + warning(_("unable to access '%s': %s"), fname, strerror(errno)); if (0 <= fd) close(fd); if (!check_index || @@ -1311,9 +1313,9 @@ void setup_standard_excludes(struct dir_struct *dir) home_config_paths(NULL, &xdg_path, "ignore"); excludes_file = xdg_path; } - if (!access(path, R_OK)) + if (!access_or_warn(path, R_OK)) add_excludes_from_file(dir, path); - if (excludes_file && !access(excludes_file, R_OK)) + if (excludes_file && !access_or_warn(excludes_file, R_OK)) add_excludes_from_file(dir, excludes_file); } |