summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dir.c2
-rwxr-xr-xt/t1306-xdg-files.sh7
2 files changed, 8 insertions, 1 deletions
diff --git a/dir.c b/dir.c
index 390367fa67..059ec28dbb 100644
--- a/dir.c
+++ b/dir.c
@@ -1302,7 +1302,7 @@ void setup_standard_excludes(struct dir_struct *dir)
}
if (!access(path, R_OK))
add_excludes_from_file(dir, path);
- if (!access(excludes_file, R_OK))
+ if (excludes_file && !access(excludes_file, R_OK))
add_excludes_from_file(dir, excludes_file);
}
diff --git a/t/t1306-xdg-files.sh b/t/t1306-xdg-files.sh
index 1569596ab3..94bb696ff4 100755
--- a/t/t1306-xdg-files.sh
+++ b/t/t1306-xdg-files.sh
@@ -95,6 +95,13 @@ test_expect_success 'Exclusion in a non-XDG global ignore file' '
test_must_fail git add to_be_excluded
'
+test_expect_success 'Checking XDG ignore file when HOME is unset' '
+ >expected &&
+ (sane_unset HOME &&
+ git config --unset core.excludesfile &&
+ git ls-files --exclude-standard --ignored >actual) &&
+ test_cmp expected actual
+'
test_expect_success 'Checking attributes in the XDG attributes file' '
echo foo >f &&