From db03b55781f23a9276234faf9a21922ff8c5678d Mon Sep 17 00:00:00 2001 From: Jeff King Date: Wed, 24 Feb 2010 12:08:53 -0500 Subject: [PATCH] push: fix segfault for odd config If you have a branch.$X.merge config option, but no branch.$X.remote, and your configuration tries to push tracking branches, git will segfault. The problem is that even though branch->merge_nr is 1, you don't actually have an upstream since there is no remote. Other callsites generally check explicitly that branch->merge is not NULL, so let's do that here, too. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- builtin-push.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builtin-push.c b/builtin-push.c index 45fe843b20..041e5f4608 100644 --- a/builtin-push.c +++ b/builtin-push.c @@ -54,7 +54,7 @@ static void setup_push_tracking(void) struct branch *branch = branch_get(NULL); if (!branch) die("You are not currently on a branch."); - if (!branch->merge_nr) + if (!branch->merge_nr || !branch->merge) die("The current branch %s is not tracking anything.", branch->name); if (branch->merge_nr != 1) -- 2.11.4.GIT