author | Junio C Hamano <gitster@pobox.com> | |
Sun, 9 Dec 2007 08:56:44 +0000 (00:56 -0800) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Sun, 9 Dec 2007 08:56:44 +0000 (00:56 -0800) |
* maint:
config.c:store_write_pair(): don't read the byte before a malloc'd buffer.
config.c:store_write_pair(): don't read the byte before a malloc'd buffer.
config.c | patch | blob | history |
diff --git a/config.c b/config.c
index ed96213c44265289c26d46edaaf740cebd0b4c86..15b3d07349b246d3a46721c5d84c65a2093d9ad3 100644 (file)
--- a/config.c
+++ b/config.c
int length = strlen(key+store.baselen+1);
int quote = 0;
- /* Check to see if the value needs to be quoted. */
+ /*
+ * Check to see if the value needs to be surrounded with a dq pair.
+ * Note that problematic characters are always backslash-quoted; this
+ * check is about not losing leading or trailing SP and strings that
+ * follow beginning-of-comment characters (i.e. ';' and '#') by the
+ * configuration parser.
+ */
if (value[0] == ' ')
quote = 1;
for (i = 0; value[i]; i++)
if (value[i] == ';' || value[i] == '#')
quote = 1;
- if (value[i-1] == ' ')
+ if (i && value[i-1] == ' ')
quote = 1;
if (write_in_full(fd, "\t", 1) != 1 ||