So now we have two fixes for the same issue, don't we ? You probably missed $gmane/225534. On Mon, May 27, 2013 at 4:20 PM, Ramkumar Ramachandra <artagnon@xxxxxxxxx> wrote: > Commit a24a41e (git-commit: only append a newline to -m mesg if > necessary, 2013-02-18) introduced a regression: when > --allow-empty-message is used and an empty message is explicitly > specified with -m "", git commit still launches $EDITOR unnecessarily. > The commit (correctly) fixes opt_parse_m() to not fill in two newlines > into the message buffer unconditionally. The real problem is that > launching $EDITOR only depends on use_editor and whether message is > empty. Fix the problem by setting explicit_message in the codepath > where an explicit string is passed via -m, and then checking it before > launching $EDITOR. > > Reported-by: Mislav Marohnić <mislav.marohnic@xxxxxxxxx> > Signed-off-by: Ramkumar Ramachandra <artagnon@xxxxxxxxx> > --- > Works? > > builtin/commit.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/builtin/commit.c b/builtin/commit.c > index d2f30d9..7d72ba7 100644 > --- a/builtin/commit.c > +++ b/builtin/commit.c > @@ -108,6 +108,7 @@ static const char *cleanup_arg; > static enum commit_whence whence; > static int use_editor = 1, include_status = 1; > static int show_ignored_in_status; > +static int explicit_message = 0; > static const char *only_include_assumed; > static struct strbuf message = STRBUF_INIT; > > @@ -128,6 +129,7 @@ static int opt_parse_m(const struct option *opt, const char *arg, int unset) > strbuf_addch(buf, '\n'); > strbuf_addstr(buf, arg); > strbuf_complete_line(buf); > + explicit_message = 1; > } > return 0; > } > @@ -824,7 +826,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix, > git_path(commit_editmsg), hook_arg1, hook_arg2, NULL)) > return 0; > > - if (use_editor) { > + if (use_editor && !explicit_message) { > char index[PATH_MAX]; > const char *env[2] = { NULL }; > env[0] = index; > -- > 1.8.3.1.g33669de.dirty > > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html