Re: [PATCH 3/3] diff: remove dead code
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 8, 2016, 21:07 UTC
- Message-ID
- <xmqqlgz2f6ce.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20160907233648.5162-6-sbeller@google.com>
Stefan Beller <sbeller@google.com> writes:
Show 7 quoted lines
> When `len < 1`, len has to be 0 or negative, emit_line will then remove the > first character and by then `len` would be negative. As this doesn't > happen, it is safe to assume it is dead code. > > This continues to simplify the code, which was started in b8d9c1a66b > (2009-09-03, diff.c: the builtin_diff() deals with only two-file > comparison).
We look at line[0] to see if it is '@' before this check, which would have been wrong if "len < 1" were ever true.
Show 25 quoted lines
>
> Signed-off-by: Stefan Beller <sbeller@google.com>
> ---
> diff.c | 8 --------
> 1 file changed, 8 deletions(-)
>
> diff --git a/diff.c b/diff.c
> index 79ad91d..c143019 100644
> --- a/diff.c
> +++ b/diff.c
> @@ -1251,14 +1251,6 @@ static void fn_out_consume(void *priv, char *line, unsigned long len)
> return;
> }
>
> - if (len < 1) {
> - emit_line(o, reset, reset, line, len);
> - if (ecbdata->diff_words
> - && ecbdata->diff_words->type == DIFF_WORDS_PORCELAIN)
> - fputs("~\n", o->file);
> - return;
> - }
> -
> if (ecbdata->diff_words) {
> if (line[0] == '-') {
> diff_words_append(line, len,