Show 33 quoted lines
> On Fri, Jan 22, 2021 at 03:21:37PM +0100, Jacob Vosmaer wrote:
>
>> This fixes a bug that occurs when you combine partial clone and
>> uploadpack.packobjectshook. You can reproduce it as follows:
> ...
> I'm somewhat embarrassed to say that despite being the one who added the
> pack-objects hook 4 years ago, we still have not switched over to it at
> GitHub from our custom patch (the reason is just mundane; there's some
> other adjustments that would have to happen and nobody has ever quite
> gotten around to it). Presumably you are looking to use it at GitLab.
> Just beware that you are probably treading new-ish ground, so there may
> be other bugs like this lurking.
>
>> diff --git a/upload-pack.c b/upload-pack.c
>> index 3b66bf92ba..eae1fdbc55 100644
>> --- a/upload-pack.c
>> +++ b/upload-pack.c
>> @@ -305,14 +305,7 @@ static void create_pack_file(struct upload_pack_data *pack_data,
>> if (pack_data->filter_options.choice) {
>> const char *spec =
>> expand_list_objects_filter_spec(&pack_data->filter_options);
>> - if (pack_objects.use_shell) {
>> - struct strbuf buf = STRBUF_INIT;
>> - sq_quote_buf(&buf, spec);
>> - strvec_pushf(&pack_objects.args, "--filter=%s", buf.buf);
>> - strbuf_release(&buf);
>> - } else {
>> - strvec_pushf(&pack_objects.args, "--filter=%s", spec);
>> - }
>> + strvec_pushf(&pack_objects.args, "--filter=%s", spec);
>
> Yep, this looks like the right fix. I think with an addition to the test
> suite, this will be good to go.