Prevent send-pack from segfaulting (backport from 'master')

4491e62ae9 (Prevent send-pack from
segfaulting when a branch doesn't match) is hereby cherry-picked
back to 'maint'.

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>
This commit is contained in:
Junio C Hamano 2007-10-30 11:30:43 -07:00
Родитель 562e35c34c
Коммит b6c9fb5100
1 изменённых файлов: 4 добавлений и 1 удалений

Просмотреть файл

@ -504,8 +504,11 @@ static int match_explicit(struct ref *src, struct ref *dst,
if (!matched_src) if (!matched_src)
errs = 1; errs = 1;
if (dst_value == NULL) if (!dst_value) {
if (!matched_src)
return errs;
dst_value = matched_src->name; dst_value = matched_src->name;
}
switch (count_refspec_match(dst_value, dst, &matched_dst)) { switch (count_refspec_match(dst_value, dst, &matched_dst)) {
case 1: case 1: