threads / patch / 20973

patchpush: Correctly initialize nonfastforward in do_push.

Subject: [PATCH] push: Correctly initialize nonfastforward in do_push.

## tl;dr

2 messages between Sep 16, 2009 and Sep 16, 2009. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Matthieu Moy· Sep 16, 2009, 16:37 UTC · lore

The variable is assigned unconditionally in print_push_status, but print_push_status is not reached by all codepaths. In particular, this fixes a bug where "git push ... nonexisting-branch" was complaining about non-fast forward.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
---
(I'm the one to blame, sorry for introducing this bug)
 builtin-push.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to builtin-push.c +1 −1
diff --git a/builtin-push.c b/builtin-push.c
index 3cb1ee4..a73333b 100644
--- a/builtin-push.c
+++ b/builtin-push.c
@@ -140,7 +140,7 @@ static int do_push(const char *repo, int flags)
 		struct transport *transport =
 			transport_get(remote, url[i]);
 		int err;
-		int nonfastforward;
+		int nonfastforward = 0;
 		if (receivepack)
 			transport_set_option(transport,
 					     TRANS_OPT_RECEIVEPACK, receivepack);
-- 
1.6.5.rc1.11.g2d184.dirty
Junio C Hamano· Sep 16, 2009, 17:13 UTC · re: Matthieu Moy · lore

Re: [PATCH] push: Correctly initialize nonfastforward in do_push.

Matthieu Moy <Matthieu.Moy@imag.fr> writes:
> The variable is assigned unconditionally in print_push_status, but
> print_push_status is not reached by all codepaths. In particular, this
> fixes a bug where "git push ... nonexisting-branch" was complaining about
> non-fast forward.

Hmm, the patch looks correct but I am scratching my head to see how this is triggered. "git push ... nonexisting-branch" seems to get:

	error: src refspec nonexisting-branch does not match any.
        error: failed to push some refs to '...'

← back to recent threads