зеркало из https://github.com/microsoft/git.git
ref_transaction_commit(): check for valid `transaction->state`
Move the check that `transaction->state` is valid from `files_transaction_commit()` to `ref_transaction_commit()`, where other future reference backends can benefit from it as well. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
c0ca935764
Коммит
8d4240d3c8
12
refs.c
12
refs.c
|
@ -1694,6 +1694,18 @@ int ref_transaction_commit(struct ref_transaction *transaction,
|
|||
{
|
||||
struct ref_store *refs = transaction->ref_store;
|
||||
|
||||
switch (transaction->state) {
|
||||
case REF_TRANSACTION_OPEN:
|
||||
/* Good. */
|
||||
break;
|
||||
case REF_TRANSACTION_CLOSED:
|
||||
die("BUG: prepare called on a closed reference transaction");
|
||||
break;
|
||||
default:
|
||||
die("BUG: unexpected reference transaction state");
|
||||
break;
|
||||
}
|
||||
|
||||
if (getenv(GIT_QUARANTINE_ENVIRONMENT)) {
|
||||
strbuf_addstr(err,
|
||||
_("ref updates forbidden inside quarantine environment"));
|
||||
|
|
|
@ -2874,9 +2874,6 @@ static int files_transaction_commit(struct ref_store *ref_store,
|
|||
|
||||
assert(err);
|
||||
|
||||
if (transaction->state != REF_TRANSACTION_OPEN)
|
||||
die("BUG: commit called for transaction that is not open");
|
||||
|
||||
if (!transaction->nr)
|
||||
goto cleanup;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче