From: Junio C Hamano Date: Fri, 13 Feb 2015 18:27:44 GMT Subject: Re: [PATCH v2 04/12] ref_transaction_update(): remove "have_old" parameter Message-ID: In-Reply-To: <54DE3135.7070902@alum.mit.edu> Michael Haggerty writes: > On 02/12/2015 06:32 PM, Junio C Hamano wrote: >> On Thu, Feb 12, 2015 at 3:12 AM, Michael Haggerty 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.