Commit bcad677ba8e0c0c220b758e2203f5bfe3506bc81

delanne 2012-11-08T12:28:21

- Update 'tests-clar/resources/config/config11' in order to reproduce the invalidread with the unittest (just added some \n at the end of the file) - Fix config_file.c

diff --git a/src/config_file.c b/src/config_file.c
index 1eae8b9..4ca842b 100644
--- a/src/config_file.c
+++ b/src/config_file.c
@@ -924,7 +924,7 @@ static int strip_comments(char *line, int in_quotes)
 	}
 
 	/* skip any space at the end */
-	if (git__isspace(ptr[-1])) {
+	if (ptr > line && git__isspace(ptr[-1])) {
 		ptr--;
 	}
 	ptr[0] = '\0';
@@ -1398,7 +1398,7 @@ static int parse_variable(diskfile_backend *cfg, char **var_name, char **var_val
 		value_start = var_end + 1;
 
 	do var_end--;
-	while (git__isspace(*var_end));
+	while (var_end>line && git__isspace(*var_end));
 
 	*var_name = git__strndup(line, var_end - line + 1);
 	GITERR_CHECK_ALLOC(*var_name);
diff --git a/tests-clar/resources/config/config11 b/tests-clar/resources/config/config11
index 880c945..7331862 100644
--- a/tests-clar/resources/config/config11
+++ b/tests-clar/resources/config/config11
@@ -1,3 +1,5 @@
 [remote "fancy"]
     url = git://github.com/libgit2/libgit2
     url = git://git.example.com/libgit2
+
+