Re: [PATCH v2 04/12] ref_transaction_update(): remove "have_old" parameter
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 13, 2015, 18:27 UTC
- Message-ID
- <xmqqfva9oee7.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <54DE3135.7070902@alum.mit.edu>
Michael Haggerty <mhagger@alum.mit.edu> writes:
Show 20 quoted lines
> On 02/12/2015 06:32 PM, Junio C Hamano wrote:
>> On Thu, Feb 12, 2015 at 3:12 AM, Michael Haggerty <mhagger@alum.mit.edu> wrote:
>>> Instead, verify the reference's old value if and only if old_sha1 is
>>> non-NULL.
>>>
>>> ...
>>> @@ -3664,9 +3664,6 @@ int ref_transaction_update(struct ref_transaction *transaction,
>>> if (transaction->state != REF_TRANSACTION_OPEN)
>>> die("BUG: update called for transaction that is not open");
>>>
>>> - if (have_old && !old_sha1)
>>> - die("BUG: have_old is true but old_sha1 is NULL");
>>> -
>>
>> In the old world, old_sha1 here used to be one of
>> (1) NULL, (2) null_sha1[], or (3) a real object name.
>> What is the rule in the new world?
> ...
> ... If old_sha1 is NULL, then the previous
> value is not checked.OK. That makes it perfectly clear that removing these lines is the right thing to do.
Thanks.