transport-helper.c: do not overwrite forced bit
authorMax Horn <max@quendi.de>
Fri, 21 Feb 2014 09:55:59 +0000 (10:55 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 24 Feb 2014 17:04:17 +0000 (09:04 -0800)
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 <max@quendi.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
transport-helper.c
index abe4c3c2c2ae29488d0d6f0a46424409f14a39cf..705dce7e049af441f706ea56b8c5ca82bf2b5482 100644 (file)
@@ -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);
 }