Browse Source

git-apply: ignore empty git headers

A meaningful (ie non-empty) git patch always has more information in the
header than just the "diff --git" line itself: it needs to have either a
patch associated with it (which implies "---" and "+++" lines in the
header) or it needs to have rename/copy/delete/create information in it.

Just ignore git patches which have no change information. Otherwise we'll
end up with a patch that doesn't have filenames etc filled in, and we'll
be unhappy.
maint
Linus Torvalds 20 years ago
parent
commit
206de27efa
  1. 2
      apply.c

2
apply.c

@ -568,7 +568,7 @@ static int find_header(char *line, unsigned long size, int *hdrsize, struct patc
*/ */
if (!memcmp("diff --git ", line, 11)) { if (!memcmp("diff --git ", line, 11)) {
int git_hdr_len = parse_git_header(line, len, size, patch); int git_hdr_len = parse_git_header(line, len, size, patch);
if (git_hdr_len < 0) if (git_hdr_len <= len)
continue; continue;
if (!patch->old_name && !patch->new_name) if (!patch->old_name && !patch->new_name)
die("git diff header lacks filename information (line %d)", linenr); die("git diff header lacks filename information (line %d)", linenr);

Loading…
Cancel
Save