Commit 301dc26a5a426870dc8f0728670c1c59ca42d300

Sim Domingo 2016-06-20T13:15:35

fix error when including a missing config file relative to the home directory

diff --git a/src/config_file.c b/src/config_file.c
index 50c5a3d..6ef8066 100644
--- a/src/config_file.c
+++ b/src/config_file.c
@@ -1254,8 +1254,16 @@ static int strip_comments(char *line, int in_quotes)
 static int included_path(git_buf *out, const char *dir, const char *path)
 {
 	/* From the user's home */
-	if (path[0] == '~' && path[1] == '/')
-		return git_sysdir_find_global_file(out, &path[1]);
+	int result;
+	if (path[0] == '~' && path[1] == '/') {
+		result = git_sysdir_find_global_file(out, &path[1]);
+		if (result == GIT_ENOTFOUND) {
+			git_buf_sets(out, &path[1]);
+			return 0;
+		}
+
+		return result;
+	}
 
 	return git_path_join_unrooted(out, path, dir, NULL);
 }