[PATCH v3 3/5] pretty-print: further abstract out pp_handle_indent()
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:08:55
Subsystem:
the rest · Maintainer:
Linus Torvalds
Separate the call to add 4-space indent, and a new helper to add a line after de-tabifying. The new helper function strbuf_add_tabexpand() could later be moved to strbuf.[ch] if other callers need to. Signed-off-by: Junio C Hamano <redacted> --- pretty.c | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/pretty.c b/pretty.c
index 6d657fc..717ceed 100644
--- a/pretty.c
+++ b/pretty.c@@ -1643,18 +1643,12 @@ static int pp_utf8_width(const char *start, const char *end) return width; } -/* - * pp_handle_indent() prints out the intendation, and - * the whole line (without the final newline), after - * de-tabifying. - */ -static void pp_handle_indent(struct strbuf *sb, int indent, - const char *line, int linelen) + +static void strbuf_add_tabexpand(struct strbuf *sb, + const char *line, int linelen) { const char *tab; - strbuf_addchars(sb, ' ', indent); - while ((tab = memchr(line, '\t', linelen)) != NULL) { int width = pp_utf8_width(line, tab);
@@ -1686,6 +1680,18 @@ static void pp_handle_indent(struct strbuf *sb, int indent, strbuf_add(sb, line, linelen); } +/* + * pp_handle_indent() prints out the intendation, and + * the whole line (without the final newline), after + * de-tabifying. + */ +static void pp_handle_indent(struct strbuf *sb, int indent, + const char *line, int linelen) +{ + strbuf_addchars(sb, ' ', indent); + strbuf_add_tabexpand(sb, line, linelen); +} + void pp_remainder(struct pretty_print_context *pp, const char **msg_p, struct strbuf *sb,
--
2.8.0-rc4-198-g3f6b64c