[PATCH 4/5] notes: fix handling of colon-separated values
- From
Michael Haggerty <mhagger@alum.mit.edu>
- Date
- Nov 4, 2012, 07:07 UTC
- Message-ID
- <1352012830-13591-5-git-send-email-mhagger@alum.mit.edu>
- In-Reply-To
- <1352012830-13591-1-git-send-email-mhagger@alum.mit.edu>
The substrings output by strbuf_split() include the ':' delimiters. When processing GIT_NOTES_DISPLAY_REF and GIT_NOTES_REWRITE_REF, strip off the delimiter character *before* checking whether the substring is empty rather than after, so that empty strings within the list are also skipped.
Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> --- notes.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/notes.c b/notes.c index 62f8f6f..63b2a09 100644 --- a/notes.c +++ b/notes.c @@ -951,10 +951,10 @@ void string_list_add_refs_from_colon_sep(struct string_list *list, split = strbuf_split(&globbuf, ':'); for (i = 0; split[i]; i++) { + if (split[i]->len && split[i]->buf[split[i]->len-1] == ':') + strbuf_setlen(split[i], split[i]->len-1); if (!split[i]->len) continue; - if (split[i]->buf[split[i]->len-1] == ':') - strbuf_setlen(split[i], split[i]->len-1); string_list_add_refs_by_glob(list, split[i]->buf); }
-- 1.8.0