Subject: Re: What's cooking in git.git (Feb 2014, #06; Wed, 19)

From: Junio C Hamano <[email-masked]>
Date: Mon, 24 Feb 2014 09:06:07 -0800

Junio C Hamano <[email-masked]> writes:

> But I think I was worried too much into the future---I agree that
> the code can stay as you proposed until such a remote-helper needs
> more support, because "overwrite with zero" is necessary but is
> probably not sufficient---it also may need to be able to tell us
> what the final resulting commit of the push is, for example.

So, here is what I'll queue (with forged s-o-b).

Thanks.

-- >8 --
From: Max Horn <[email-masked]>
Date: Fri, 21 Feb 2014 10:55:59 +0100
Subject: [PATCH] transport-helper.c: do not overwrite forced bit

If the the transport helper says it was a forced update, then it is
a forced update.  It is however possible that an update is forced
without the transport-helper knowing about it, namely because some
higher up code had objections to the update and needed forcing in
order to let it through to the transport helper.  In other words, it
does not necessarily mean the update was *not* forced, when the
helper did not say "forced update".

Signed-off-by: Max Horn <[email-masked]>
Signed-off-by: Junio C Hamano <[email-masked]>
---
 transport-helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/transport-helper.c b/transport-helper.c
index abe4c3c..705dce7 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -727,7 +727,7 @@ static int push_update_ref_status(struct strbuf *buf,
 	}
 
 	(*ref)->status = status;
-	(*ref)->forced_update = forced;
+	(*ref)->forced_update |= forced;
 	(*ref)->remote_status = msg;
 	return !(status == REF_STATUS_OK);
 }
-- 
1.9.0-291-g027825b