From mboxrd@z Thu Jan 1 00:00:00 1970 From: john at keeping.me.uk (John Keeping) Date: Sun, 7 Apr 2013 15:26:34 +0100 Subject: [PATCH v2 05/22] shared.c: add strbuf_ensure_end In-Reply-To: References: Message-ID: This is a small helper so that we can easily ensure that a strbuf ends with the specified character. Signed-off-by: John Keeping --- cgit.h | 2 ++ shared.c | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/cgit.h b/cgit.h index 7619cbb..3e9d55b 100644 --- a/cgit.h +++ b/cgit.h @@ -304,6 +304,8 @@ extern char *ensure_end(const char *str, char c); extern char *strlpart(char *txt, int maxlen); extern char *strrpart(char *txt, int maxlen); +extern void strbuf_ensure_end(struct strbuf *sb, char c); + extern void cgit_add_ref(struct reflist *list, struct refinfo *ref); extern void cgit_free_reflist_inner(struct reflist *list); extern int cgit_refs_cb(const char *refname, const unsigned char *sha1, diff --git a/shared.c b/shared.c index 1fa9c99..10be355 100644 --- a/shared.c +++ b/shared.c @@ -130,6 +130,12 @@ char *ensure_end(const char *str, char c) return result; } +void strbuf_ensure_end(struct strbuf *sb, char c) +{ + if (!sb->len || sb->buf[sb->len - 1] != c) + strbuf_addch(sb, c); +} + char *strlpart(char *txt, int maxlen) { char *result; -- 1.8.2.692.g17a9715