git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [BUG] remote.c/match_explicit() ... NULL pointer dereferenciation (git 1.5.3.4)

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 30, 2007, 18:30 UTC
Message-ID
<7vwst4lajw.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<200710301144.32528@rk-nord.at>
Subject: Prevent send-pack from segfaulting (backport from 'master')

4491e62ae932d5774f628d1bd3be663c11058a73 (Prevent send-pack from segfaulting when a branch doesn't match)

If we can't find a source match, and we have no destination, we need to abort the match function early before we try to match the destination against the remote.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
  Thanks.  Shawn fixed it on the 'master' side but 'maint' is
  still using the old code.
 remote.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/remote.c b/remote.c
index cdbbdcb..9a88917 100644
--- a/remote.c
+++ b/remote.c
@@ -504,8 +504,11 @@ static int match_explicit(struct ref *src, struct ref *dst,
 	if (!matched_src)
 		errs = 1;
 
-	if (dst_value == NULL)
+	if (!dst_value) {
+		if (!matched_src)
+			return errs;
 		dst_value = matched_src->name;
+	}
 
 	switch (count_refspec_match(dst_value, dst, &matched_dst)) {
 	case 1:
Previous: Melchior FRANZ
Message 2 of 2 in “[BUG] remote.c/match_explicit() ... NULL pointer dereferenciation (git 1.5.3.4)”
  1. Melchior FRANZOct 30, 2007
  2. Junio C HamanoOct 30, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.