mirror of
https://github.com/git/git.git
synced 2024-10-29 21:37:53 +01:00
Merge branch 'bc/maint-apply-check-no-patch'
* bc/maint-apply-check-no-patch: builtin/apply.c: report error on failure to recognize input t/t4131-apply-fake-ancestor.sh: fix broken test
This commit is contained in:
commit
b661a4bc1e
3 changed files with 25 additions and 6 deletions
|
@ -3587,15 +3587,12 @@ static int write_out_one_reject(struct patch *patch)
|
|||
return -1;
|
||||
}
|
||||
|
||||
static int write_out_results(struct patch *list, int skipped_patch)
|
||||
static int write_out_results(struct patch *list)
|
||||
{
|
||||
int phase;
|
||||
int errs = 0;
|
||||
struct patch *l;
|
||||
|
||||
if (!list && !skipped_patch)
|
||||
return error("No changes");
|
||||
|
||||
for (phase = 0; phase < 2; phase++) {
|
||||
l = list;
|
||||
while (l) {
|
||||
|
@ -3721,6 +3718,9 @@ static int apply_patch(int fd, const char *filename, int options)
|
|||
offset += nr;
|
||||
}
|
||||
|
||||
if (!list && !skipped_patch)
|
||||
die("unrecognized input");
|
||||
|
||||
if (whitespace_error && (ws_error_action == die_on_ws_error))
|
||||
apply = 0;
|
||||
|
||||
|
@ -3738,7 +3738,7 @@ static int apply_patch(int fd, const char *filename, int options)
|
|||
!apply_with_reject)
|
||||
exit(1);
|
||||
|
||||
if (apply && write_out_results(list, skipped_patch))
|
||||
if (apply && write_out_results(list))
|
||||
exit(1);
|
||||
|
||||
if (fake_ancestor)
|
||||
|
|
|
@ -11,7 +11,7 @@ test_expect_success 'setup' '
|
|||
test_commit 1 &&
|
||||
test_commit 2 &&
|
||||
mkdir sub &&
|
||||
test_commit 3 sub/3 &&
|
||||
test_commit 3 sub/3.t &&
|
||||
test_commit 4
|
||||
'
|
||||
|
||||
|
|
19
t/t4136-apply-check.sh
Executable file
19
t/t4136-apply-check.sh
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
test_description='git apply should exit non-zero with unrecognized input.'
|
||||
|
||||
. ./test-lib.sh
|
||||
|
||||
test_expect_success 'setup' '
|
||||
test_commit 1
|
||||
'
|
||||
|
||||
test_expect_success 'apply --check exits non-zero with unrecognized input' '
|
||||
test_must_fail git apply --check - <<-\EOF
|
||||
I am not a patch
|
||||
I look nothing like a patch
|
||||
git apply must fail
|
||||
EOF
|
||||
'
|
||||
|
||||
test_done
|
Loading…
Reference in a new issue