[PATCH v3 4/9] url: add str wrapper for end_url_with_slash()
Helped-by: Johnathan Nieder <jrnieder@gmail.com>
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
---
Changed from v2: removed pointer check before free(), as suggested by Johnathan.
url.c | 7 +++++++
url.h | 1 +
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/url.c b/url.c
index 7cebc64..6a54959 100644
--- a/url.c
+++ b/url.c
@@ -132,3 +132,10 @@ void end_url_with_slash(struct strbuf *buf, const char *url)
if (buf->len && buf->buf[buf->len - 1] != '/')
strbuf_addstr(buf, "/");
}
+
+void str_end_url_with_slash(const char *url, char **dest) {
+ struct strbuf buf = STRBUF_INIT;
+ end_url_with_slash(&buf, url);
+ free(*dest);
+ *dest = strbuf_detach(&buf, NULL);
+}
diff --git a/url.h b/url.h
index 8cb74d4..7100e32 100644
--- a/url.h
+++ b/url.h
@@ -8,5 +8,6 @@ extern char *url_decode_parameter_name(const char **query);
extern char *url_decode_parameter_value(const char **query);
extern void end_url_with_slash(struct strbuf *buf, const char *url);
+extern void str_end_url_with_slash(const char *url, char **dest);
#endif /* URL_H */
--
1.7.3.2.495.gc7b3f