summaryrefslogtreecommitdiff
path: root/apply.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-12 16:37:49 (GMT)
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-12 16:37:49 (GMT)
commit206de27efac383cecc3d0f938e220dc359be36c1 (patch)
tree244cbf4876f89cc664ba565b73d1a53d3e6f7084 /apply.c
parent025a0709b6179506ffc0d35967bdd4fb804d30fb (diff)
downloadgit-206de27efac383cecc3d0f938e220dc359be36c1.zip
git-206de27efac383cecc3d0f938e220dc359be36c1.tar.gz
git-206de27efac383cecc3d0f938e220dc359be36c1.tar.bz2
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.
Diffstat (limited to 'apply.c')
-rw-r--r--apply.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/apply.c b/apply.c
index 20c41c5..01bcb94 100644
--- a/apply.c
+++ b/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)) {
int git_hdr_len = parse_git_header(line, len, size, patch);
- if (git_hdr_len < 0)
+ if (git_hdr_len <= len)
continue;
if (!patch->old_name && !patch->new_name)
die("git diff header lacks filename information (line %d)", linenr);