On Tue, Jul 26, 2016 at 12:59:04PM -0700, Junio C Hamano wrote:
John Keeping [off-list ref] writes:
quoted
quoted
quoted
@@ -2294,6 +2294,8 @@ int parse_push_cas_option(struct push_cas_option *cas, const char *arg, int unse
entry = add_cas_entry(cas, arg, colon - arg);
if (!*colon)
entry->use_tracking = 1;
+ else if (!colon[1])
+ memset(entry->expect, 0, sizeof(entry->expect));
hashclr()?
Yes (and in the following patch as well). I hadn't realised that
function exists.
Thanks; I've locally tweaked these two patches; the interdiff looks
like this.
Thanks. I'm about to send v3 anyway to pull a test forward to address
Jakub's comment. I also used oidclr() for the last two changes below.
quoted hunk ↗ jump to hunk
remote.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/remote.c b/remote.c
index e8b7bac..7eaf3c8 100644
--- a/remote.c
+++ b/remote.c
@@ -2304,7 +2304,7 @@ int parse_push_cas_option(struct push_cas_option *cas, const char *arg, int unse
if (!*colon)
entry->use_tracking = 1;
else if (!colon[1])
- memset(entry->expect, 0, sizeof(entry->expect));
+ hashclr(entry->expect);
else if (get_sha1(colon + 1, entry->expect))
return error("cannot parse expected object name '%s'", colon + 1);
return 0;@@ -2354,7 +2354,7 @@ static void apply_cas(struct push_cas_option *cas,
if (!entry->use_tracking)
hashcpy(ref->old_oid_expect.hash, cas->entry[i].expect);
else if (remote_tracking(remote, ref->name, &ref->old_oid_expect))
- memset(&ref->old_oid_expect, 0, sizeof(ref->old_oid_expect));
+ hashclr(ref->old_oid_expect.hash);
return;
}
@@ -2364,7 +2364,7 @@ static void apply_cas(struct push_cas_option *cas,
ref->expect_old_sha1 = 1;
if (remote_tracking(remote, ref->name, &ref->old_oid_expect))
- memset(&ref->old_oid_expect, 0, sizeof(ref->old_oid_expect));
+ hashclr(ref->old_oid_expect.hash);
}
void apply_push_cas(struct push_cas_option *cas,