* skip_optional_lf() decl is old-style -- please say

	static skip_optional_lf(void)
        {
        	...
	}

* t9300 #14 fails, like this:

* expecting failure: git-fast-import <input
fatal: Branch name doesn't conform to GIT standards: .badbranchname
fast-import: dumping crash report to .git/fast_import_crash_14354
./test-lib.sh: line 143: 14354 Segmentation fault      git-fast-import <input

-- >8 --
Subject: [PATCH] fastimport: Fix re-use of va_list

The va_list is designed to be used only once. The current code
reuses va_list argument may cause segmentation fault.  Copy and
release the arguments to avoid this problem.

While we are at it, fix old-style function declaration of
skip_optional_lf().

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
Junio C Hamano 2007-08-19 02:50:18 -07:00 коммит произвёл Shawn O. Pearce
Родитель 904b194151
Коммит 7e5dcea831
1 изменённых файлов: 5 добавлений и 3 удалений

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

@ -442,16 +442,18 @@ static void write_crash_report(const char *err, va_list params)
static NORETURN void die_nicely(const char *err, va_list params)
{
static int zombie;
va_list x_params;
va_copy(x_params, params);
fputs("fatal: ", stderr);
vfprintf(stderr, err, params);
fputc('\n', stderr);
if (!zombie) {
zombie = 1;
write_crash_report(err, params);
write_crash_report(err, x_params);
}
va_end(x_params);
exit(128);
}
@ -1618,7 +1620,7 @@ static void read_next_command(void)
} while (command_buf.buf[0] == '#');
}
static void skip_optional_lf()
static void skip_optional_lf(void)
{
int term_char = fgetc(stdin);
if (term_char != '\n' && term_char != EOF)