зеркало из https://github.com/microsoft/git.git
ref_transaction_delete(): remove "have_old" parameter
Instead, verify the reference's old value if and only if old_sha1 is non-NULL. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Reviewed-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
1d147bdff0
Коммит
fb5a6bb61c
|
@ -953,8 +953,7 @@ static const char *update(struct command *cmd, struct shallow_info *si)
|
|||
if (ref_transaction_delete(transaction,
|
||||
namespaced_name,
|
||||
old_sha1,
|
||||
0, old_sha1 != NULL,
|
||||
"push", &err)) {
|
||||
0, "push", &err)) {
|
||||
rp_error("%s", err.buf);
|
||||
strbuf_release(&err);
|
||||
return "failed to delete";
|
||||
|
|
|
@ -265,8 +265,9 @@ static const char *parse_cmd_delete(struct ref_transaction *transaction,
|
|||
if (*next != line_termination)
|
||||
die("delete %s: extra input: %s", refname, next);
|
||||
|
||||
if (ref_transaction_delete(transaction, refname, old_sha1,
|
||||
update_flags, have_old, msg, &err))
|
||||
if (ref_transaction_delete(transaction, refname,
|
||||
have_old ? old_sha1 : NULL,
|
||||
update_flags, msg, &err))
|
||||
die("%s", err.buf);
|
||||
|
||||
update_flags = 0;
|
||||
|
|
11
refs.c
11
refs.c
|
@ -2576,7 +2576,7 @@ static void prune_ref(struct ref_to_prune *r)
|
|||
transaction = ref_transaction_begin(&err);
|
||||
if (!transaction ||
|
||||
ref_transaction_delete(transaction, r->name, r->sha1,
|
||||
REF_ISPRUNING, 1, NULL, &err) ||
|
||||
REF_ISPRUNING, NULL, &err) ||
|
||||
ref_transaction_commit(transaction, &err)) {
|
||||
ref_transaction_free(transaction);
|
||||
error("%s", err.buf);
|
||||
|
@ -2753,8 +2753,9 @@ int delete_ref(const char *refname, const unsigned char *sha1, unsigned int flag
|
|||
|
||||
transaction = ref_transaction_begin(&err);
|
||||
if (!transaction ||
|
||||
ref_transaction_delete(transaction, refname, sha1, flags,
|
||||
sha1 && !is_null_sha1(sha1), NULL, &err) ||
|
||||
ref_transaction_delete(transaction, refname,
|
||||
(sha1 && !is_null_sha1(sha1)) ? sha1 : NULL,
|
||||
flags, NULL, &err) ||
|
||||
ref_transaction_commit(transaction, &err)) {
|
||||
error("%s", err.buf);
|
||||
ref_transaction_free(transaction);
|
||||
|
@ -3696,11 +3697,11 @@ int ref_transaction_create(struct ref_transaction *transaction,
|
|||
int ref_transaction_delete(struct ref_transaction *transaction,
|
||||
const char *refname,
|
||||
const unsigned char *old_sha1,
|
||||
unsigned int flags, int have_old, const char *msg,
|
||||
unsigned int flags, const char *msg,
|
||||
struct strbuf *err)
|
||||
{
|
||||
return ref_transaction_update(transaction, refname,
|
||||
null_sha1, have_old ? old_sha1 : NULL,
|
||||
null_sha1, old_sha1,
|
||||
flags, msg, err);
|
||||
}
|
||||
|
||||
|
|
6
refs.h
6
refs.h
|
@ -295,8 +295,8 @@ int ref_transaction_create(struct ref_transaction *transaction,
|
|||
struct strbuf *err);
|
||||
|
||||
/*
|
||||
* Add a reference deletion to transaction. If have_old is true, then
|
||||
* old_sha1 holds the value that the reference should have had before
|
||||
* Add a reference deletion to transaction. If old_sha1 is non-NULL, then
|
||||
* it holds the value that the reference should have had before
|
||||
* the update (which must not be the null SHA-1).
|
||||
* Function returns 0 on success and non-zero on failure. A failure to delete
|
||||
* means that the transaction as a whole has failed and will need to be
|
||||
|
@ -305,7 +305,7 @@ int ref_transaction_create(struct ref_transaction *transaction,
|
|||
int ref_transaction_delete(struct ref_transaction *transaction,
|
||||
const char *refname,
|
||||
const unsigned char *old_sha1,
|
||||
unsigned int flags, int have_old, const char *msg,
|
||||
unsigned int flags, const char *msg,
|
||||
struct strbuf *err);
|
||||
|
||||
/*
|
||||
|
|
Загрузка…
Ссылка в новой задаче