summaryrefslogtreecommitdiff
path: root/git-compat-util.h
diff options
context:
space:
mode:
authorJonathan Nieder <jrnieder@gmail.com>2012-10-14 00:03:07 (GMT)
committerJunio C Hamano <gitster@pobox.com>2012-10-14 04:59:13 (GMT)
commite5c52c9898de5f829317729afc0416825531b0d5 (patch)
tree06917291a0569a3cd97dc00dd8a4cf3f45ded338 /git-compat-util.h
parent8e950dab86eafa8f4ea671fab593ca6210bc2e15 (diff)
downloadgit-e5c52c9898de5f829317729afc0416825531b0d5.zip
git-e5c52c9898de5f829317729afc0416825531b0d5.tar.gz
git-e5c52c9898de5f829317729afc0416825531b0d5.tar.bz2
config, gitignore: failure to access with ENOTDIR is ok
The access_or_warn() function is used to check for optional configuration files like .gitconfig and .gitignore and warn when they are not accessible due to a configuration issue (e.g., bad permissions). It is not supposed to complain when a file is simply missing. Noticed on a system where ~/.config/git was a file --- when the new XDG_CONFIG_HOME support looks for ~/.config/git/config it should ignore ~/.config/git instead of printing irritating warnings: $ git status -s warning: unable to access '/home/jrn/.config/git/config': Not a directory warning: unable to access '/home/jrn/.config/git/config': Not a directory warning: unable to access '/home/jrn/.config/git/config': Not a directory warning: unable to access '/home/jrn/.config/git/config': Not a directory Compare v1.7.12.1~2^2 (attr:failure to open a .gitattributes file is OK with ENOTDIR, 2012-09-13). Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-compat-util.h')
-rw-r--r--git-compat-util.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/git-compat-util.h b/git-compat-util.h
index 000042d..dba87da 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -604,7 +604,10 @@ int rmdir_or_warn(const char *path);
*/
int remove_or_warn(unsigned int mode, const char *path);
-/* Call access(2), but warn for any error besides ENOENT. */
+/*
+ * Call access(2), but warn for any error except "missing file"
+ * (ENOENT or ENOTDIR).
+ */
int access_or_warn(const char *path, int mode);
/* Warn on an inaccessible file that ought to be accessible */