Re: [PATCH 05/24] revision.[ch]: provide and start using a release_revisions()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 10 2022, Ævar Arnfjörð Bjarmason wrote:

> On Wed, Mar 09 2022, Junio C Hamano wrote:
>
>> Ævar Arnfjörð Bjarmason  <avarab@xxxxxxxxx> writes:
>>
>>> diff --git a/builtin/checkout.c b/builtin/checkout.c
>>> index 9244827ca02..ed993383531 100644
>>> --- a/builtin/checkout.c
>>> +++ b/builtin/checkout.c
>>> @@ -629,7 +629,7 @@ static void show_local_changes(struct object *head,
>>>  	diff_setup_done(&rev.diffopt);
>>>  	add_pending_object(&rev, head, NULL);
>>>  	run_diff_index(&rev, 0);
>>> -	object_array_clear(&rev.pending);
>>> +	release_revisions(&rev);
>>>  }
>>
>> I very much like this.
>>
>>> -	object_array_clear(&rev.pending);
>>>  	clear_pathspec(&rev.prune_data);
>>> +	release_revisions(&rev);
>>
>> But this makes readers wonder why .prune_data still needs a separate
>> call to clear.  We are making it unnecessary to clear .pending
>> separately, which was what made me say I very much like this in the
>> first place.
>>
>> At least surviving clear_pathspec() now deserves an in-code comment?
>> We'll know when we see what release_revisions() actually does.
>
> I'll note it in a commit message. Generally in this series I then loop
> back and remove the clear_pathspec() (or similar) once I start clearing
> "prune_data", but in this case I seem to have missed this specific case
> later in the series...

Just for completeness, I didn't miss a case here, but thought I did
because of the truncated diff mentioning "builtin/checkout.c",
nevermind... (but will fix the other raised issue).




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux