summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--abspath.c4
-rwxr-xr-xt/t0060-path-utils.sh2
2 files changed, 4 insertions, 2 deletions
diff --git a/abspath.c b/abspath.c
index f04ac18e33..5d624307d5 100644
--- a/abspath.c
+++ b/abspath.c
@@ -123,7 +123,9 @@ const char *absolute_path(const char *path)
{
static char buf[PATH_MAX + 1];
- if (is_absolute_path(path)) {
+ if (!*path) {
+ die("The empty string is not a valid path");
+ } else if (is_absolute_path(path)) {
if (strlcpy(buf, path, PATH_MAX) >= PATH_MAX)
die("Too long path: %.*s", 60, path);
} else {
diff --git a/t/t0060-path-utils.sh b/t/t0060-path-utils.sh
index d91e516750..924aa607d7 100755
--- a/t/t0060-path-utils.sh
+++ b/t/t0060-path-utils.sh
@@ -140,7 +140,7 @@ test_expect_success 'strip_path_suffix' '
c:/msysgit/libexec//git-core libexec/git-core)
'
-test_expect_failure 'absolute path rejects the empty string' '
+test_expect_success 'absolute path rejects the empty string' '
test_must_fail test-path-utils absolute_path ""
'