Merge branch 'rs/archive-filter-error-once'

"git archive" mistakenly complained twice about a missing executable,
which has been corrected.

* rs/archive-filter-error-once:
  archive-tar: report filter start error only once
This commit is contained in:
Taylor Blau 2022-11-08 17:15:09 -05:00
commit 3e9303dc8e
2 changed files with 8 additions and 0 deletions

View File

@ -498,6 +498,7 @@ static int write_tar_filter_archive(const struct archiver *ar,
strvec_push(&filter.args, cmd.buf);
filter.use_shell = 1;
filter.in = -1;
filter.silent_exec_failure = 1;
if (start_command(&filter) < 0)
die_errno(_("unable to start '%s' filter"), cmd.buf);

View File

@ -342,6 +342,13 @@ test_expect_success 'only enabled filters are available remotely' '
test_cmp_bin remote.bar config.bar
'
test_expect_success 'invalid filter is reported only once' '
test_must_fail git -c tar.invalid.command= archive --format=invalid \
HEAD >out 2>err &&
test_must_be_empty out &&
test_line_count = 1 err
'
test_expect_success 'git archive --format=tgz' '
git archive --format=tgz HEAD >j.tgz
'