René Scharfe <[email protected]> writes:
> Hmm, pondering that, it seems I forgot to reset its value after each
> patch. Or better just move it into struct patch, next to the extension
> bits:
Good catch.
> -- >8 --
> Subject: fixup! apply: check git diffs for mutually exclusive header lines
> ---
> apply.c | 7 ++++---
> apply.h | 1 -
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/apply.c b/apply.c
> index db38bc3cdd..c442b89328 100644
> --- a/apply.c
> +++ b/apply.c
> @@ -211,6 +211,7 @@ struct patch {
> unsigned ws_rule;
> int lines_added, lines_deleted;
> int score;
> + int extension_linenr; /* first line specifying delete/new/rename/copy */
> unsigned int is_toplevel_relative:1;
> unsigned int inaccurate_eof:1;
> unsigned int is_binary:1;
> @@ -1325,9 +1326,9 @@ static int check_header_line(struct apply_state *state,
> struct patch *patch)
> (patch->is_rename == 1) + (patch->is_copy == 1);
> if (extensions > 1)
> return error(_("inconsistent header lines %d and %d"),
> - state->extension_linenr, state->linenr);
> - if (extensions && !state->extension_linenr)
> - state->extension_linenr = state->linenr;
> + patch->extension_linenr, state->linenr);
> + if (extensions && !patch->extension_linenr)
> + patch->extension_linenr = state->linenr;
> return 0;
> }
>
> diff --git a/apply.h b/apply.h
> index b52078b486..b3d6783d55 100644
> --- a/apply.h
> +++ b/apply.h
> @@ -79,7 +79,6 @@ struct apply_state {
>
> /* Various "current state" */
> int linenr; /* current line number */
> - int extension_linenr; /* first line specifying delete/new/rename/copy */
> struct string_list symlink_changes; /* we have to track symlinks */
>
> /*