mirror of
https://github.com/git/git
synced 2024-10-30 14:03:28 +00:00
cmd_update_ref(): make logic more straightforward
Restructure the code to avoid clearing oldsha1 when oldval is unset. It's value is not needed in that case, so this change makes it more obvious that its initialization is consistent with its later use. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
a1c9eb918b
commit
e2991c8048
1 changed files with 10 additions and 3 deletions
|
@ -408,9 +408,16 @@ int cmd_update_ref(int argc, const char **argv, const char *prefix)
|
||||||
die("%s: not a valid SHA1", value);
|
die("%s: not a valid SHA1", value);
|
||||||
}
|
}
|
||||||
|
|
||||||
hashclr(oldsha1); /* all-zero hash in case oldval is the empty string */
|
if (oldval) {
|
||||||
if (oldval && *oldval && get_sha1(oldval, oldsha1))
|
if (!*oldval)
|
||||||
|
/*
|
||||||
|
* The empty string implies that the reference
|
||||||
|
* must not already exist:
|
||||||
|
*/
|
||||||
|
hashclr(oldsha1);
|
||||||
|
else if (get_sha1(oldval, oldsha1))
|
||||||
die("%s: not a valid old SHA1", oldval);
|
die("%s: not a valid old SHA1", oldval);
|
||||||
|
}
|
||||||
|
|
||||||
if (no_deref)
|
if (no_deref)
|
||||||
flags = REF_NODEREF;
|
flags = REF_NODEREF;
|
||||||
|
|
Loading…
Reference in a new issue