Re: [PATCH v3 6/8] refs: implement partial reference transaction support
- From
Jeff King <peff@peff.net>
- Date
- Mar 7, 2025, 19:50 UTC
- Message-ID
- <20250307195057.GA3675279@coredump.intra.peff.net>
- In-Reply-To
- <20250305-245-partially-atomic-ref-updates-v3-6-0c64e3052354@gmail.com>
On Wed, Mar 05, 2025 at 06:39:01PM +0100, Karthik Nayak wrote:
Show 14 quoted lines
> @@ -1456,6 +1471,13 @@ static enum ref_transaction_error write_with_updates(struct packed_ref_store *re
> update->refname,
> oid_to_hex(&update->old_oid));
> return REF_TRANSACTION_ERROR_NONEXISTENT_REF;
> +
> + if (ref_transaction_maybe_set_rejected(transaction, i, ret)) {
> + strbuf_setlen(err, 0);
> + ret = 0;
> + continue;
> + }
> +
> goto error;
> }
> }This new code isn't reachable, since we return in the lines shown in the diff context.
Should it have been "ret = REF_TRANSACTION_ERROR"... in the first place? I think the "goto error" was already unreachable, so possibly the error is in an earlier patch. (I didn't look; Coverity flagged this in the final state in 'jch').
-Peff