launch_editor(): read the file, even when EDITOR=:

Earlier we just returned in case EDITOR=: but the message stored
in the file was not read back.  Fix this, at the same time
simplifying the code as suggested by Johannes Sixt.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Johannes Schindelin 2007-11-08 14:06:52 +00:00 committed by Junio C Hamano
parent f5bbc3225c
commit e97c9ad96b

View File

@ -20,8 +20,6 @@ static char signingkey[1000];
void launch_editor(const char *path, struct strbuf *buffer)
{
const char *editor, *terminal;
struct child_process child;
const char *args[3];
editor = getenv("GIT_EDITOR");
if (!editor && editor_program)
@ -42,17 +40,12 @@ void launch_editor(const char *path, struct strbuf *buffer)
if (!editor)
editor = "vi";
if (!strcmp(editor, ":"))
return;
if (strcmp(editor, ":")) {
const char *args[] = { editor, path, NULL };
memset(&child, 0, sizeof(child));
child.argv = args;
args[0] = editor;
args[1] = path;
args[2] = NULL;
if (run_command(&child))
die("There was a problem with the editor %s.", editor);
if (run_command_v_opt(args, 0))
die("There was a problem with the editor %s.", editor);
}
if (strbuf_read_file(buffer, path, 0) < 0)
die("could not read message file '%s': %s",