From: Stefan Beller <sbeller@xxxxxxxxxx> At all call sites of emit_{add, del, context}_line we increment the line count, so move it into the respective functions to make the code at the calling site a bit clearer. Signed-off-by: Stefan Beller <sbeller@xxxxxxxxxx> --- diff.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/diff.c b/diff.c index aa50b2d..156c2aa 100644 --- a/diff.c +++ b/diff.c @@ -536,6 +536,7 @@ static void emit_add_line(const char *reset, struct emit_callback *ecbdata, const char *line, int len) { + ecbdata->lno_in_postimage++; emit_line_checked(reset, ecbdata, line, len, DIFF_FILE_NEW, WSEH_NEW, '+'); } @@ -544,6 +545,7 @@ static void emit_del_line(const char *reset, struct emit_callback *ecbdata, const char *line, int len) { + ecbdata->lno_in_preimage++; emit_line_checked(reset, ecbdata, line, len, DIFF_FILE_OLD, WSEH_OLD, '-'); } @@ -552,6 +554,8 @@ static void emit_context_line(const char *reset, struct emit_callback *ecbdata, const char *line, int len) { + ecbdata->lno_in_postimage++; + ecbdata->lno_in_preimage++; emit_line_checked(reset, ecbdata, line, len, DIFF_CONTEXT, WSEH_CONTEXT, ' '); } @@ -662,13 +666,10 @@ static void emit_rewrite_lines(struct emit_callback *ecb, endp = memchr(data, '\n', size); len = endp ? (endp - data + 1) : size; - if (prefix != '+') { - ecb->lno_in_preimage++; + if (prefix != '+') emit_del_line(reset, ecb, data, len); - } else { - ecb->lno_in_postimage++; + else emit_add_line(reset, ecb, data, len); - } size -= len; data += len; } @@ -1293,16 +1294,12 @@ static void fn_out_consume(void *priv, char *line, unsigned long len) switch (line[0]) { case '+': - ecbdata->lno_in_postimage++; emit_add_line(reset, ecbdata, line + 1, len - 1); break; case '-': - ecbdata->lno_in_preimage++; emit_del_line(reset, ecbdata, line + 1, len - 1); break; case ' ': - ecbdata->lno_in_postimage++; - ecbdata->lno_in_preimage++; emit_context_line(reset, ecbdata, line + 1, len - 1); break; default: -- 2.7.4