Skip to content

Commit d43a21b

Browse files
peffgitster
authored andcommitted
upload-pack: propagate return value from object filter config callback
If we encounter an error in parse_filter_object_config(), we'll complain to stderr but won't actually propagate the return value up the stack. This is unlike most of our config callbacks, which return the error to git_config() so it can die (this includes the call just below us to parse_hide_refs_config(), which can also produce errors). Signed-off-by: Jeff King <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 898f807 commit d43a21b

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

t/t5616-partial-clone.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,14 @@ test_expect_success 'implicitly construct combine: filter with repeated flags' '
251251
test_cmp unique_types.expected unique_types.actual
252252
'
253253

254+
test_expect_success 'upload-pack complains of bogus filter config' '
255+
printf 0000 |
256+
test_must_fail git \
257+
-c uploadpackfilter.tree.maxdepth \
258+
upload-pack . >/dev/null 2>err &&
259+
test_i18ngrep "unable to parse.*tree.maxdepth" err
260+
'
261+
254262
test_expect_success 'upload-pack fails banned object filters' '
255263
test_config -C srv.bare uploadpackfilter.blob:none.allow false &&
256264
test_must_fail ok=sigpipe git clone --no-checkout --filter=blob:none \

upload-pack.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1307,7 +1307,8 @@ static int upload_pack_config(const char *var, const char *value, void *cb_data)
13071307
return git_config_string(&data->pack_objects_hook, var, value);
13081308
}
13091309

1310-
parse_object_filter_config(var, value, data);
1310+
if (parse_object_filter_config(var, value, data) < 0)
1311+
return -1;
13111312

13121313
return parse_hide_refs_config(var, value, "uploadpack");
13131314
}

0 commit comments

Comments
 (0)