From: Stefan Beller <sbeller@google.com>
To: gitster@pobox.com, peff@peff.net, chriscool@tuxfamily.org
Cc: git@vger.kernel.org, Stefan Beller <sbeller@google.com>
Subject: [RFC/PATCH 02/17] diff: emit_{add, del, context}_line to increase {pre,post}image line count
Date: Mon, 12 Sep 2016 21:45:58 -0700 [thread overview]
Message-ID: <20160913044613.1037-3-sbeller@google.com> (raw)
In-Reply-To: <20160913044613.1037-1-sbeller@google.com>
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@google.com>
---
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.10.0.21.g1da280f.dirty
next prev parent reply other threads:[~2016-09-13 4:46 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-13 4:45 [RFC/PATCH 00/17] Stefan Beller
2016-09-13 4:45 ` [RFC/PATCH 01/17] diff: move line ending check into emit_hunk_header Stefan Beller
2016-09-13 14:42 ` René Scharfe
2016-09-13 22:40 ` Stefan Beller
2016-09-13 4:45 ` Stefan Beller [this message]
2016-09-13 4:45 ` [RFC/PATCH 03/17] diff.c: drop tautologous condition in emit_line_0 Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 04/17] diff.c: factor out diff_flush_patch_all_file_pairs Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 05/17] diff.c: emit_line_0 can handle no color setting Stefan Beller
2016-09-13 22:51 ` Junio C Hamano
2016-09-13 4:46 ` [RFC/PATCH 06/17] diff.c: convert fn_out_consume to use emit_line_* Stefan Beller
2016-09-13 22:56 ` Junio C Hamano
2016-09-13 4:46 ` [RFC/PATCH 07/17] diff.c: convert builtin_diff " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 08/17] diff.c: convert emit_rewrite_diff " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 09/17] diff.c: convert emit_rewrite_lines " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 10/17] submodule.c: convert show_submodule_summary to use emit_line_fmt Stefan Beller
2016-09-13 23:02 ` Junio C Hamano
2016-09-13 23:09 ` Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 11/17] diff.c: convert emit_binary_diff_body to use emit_line_* Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 12/17] diff.c: convert show_stats " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 13/17] diff.c: convert word diffing " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 14/17] diff.c: convert diff_flush " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 15/17] diff.c: convert diff_summary " Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 16/17] diff: buffer output in emit_line_0 Stefan Beller
2016-09-13 23:06 ` Junio C Hamano
2016-09-13 23:28 ` Stefan Beller
2016-09-13 23:32 ` Junio C Hamano
2016-09-13 23:42 ` Stefan Beller
2016-09-13 4:46 ` [RFC/PATCH 17/17] diff.c: color moved lines differently Stefan Beller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160913044613.1037-3-sbeller@google.com \
--to=sbeller@google.com \
--cc=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.