On Mon, Aug 15, 2016 at 12:46:23PM +0200, Theo Buehler wrote:
> This is one of the quirks of cvs that I have a hard time getting used to:
>
> $ cvs commit
> <quit $EDITOR without writing the log message to disk>
> Log message unchanged or not specified
> a)bort, c)ontinue, e)dit, !)reuse this message unchanged for remaining dirs
> Action: (continue)
>
> I don't think I'll ever want to c)ontinue here because I don't want to
> commit anything without a log message. I exit the editor without
> writing the log file precisely because there might be something wrong,
> something I need to go double check. In that situation, I don't need
> the extra thrill of making sure that I choose a non-default option so I
> don't change anything.
>
> Thus, I suggest to default to abort here.
The diff reads fine. Please commit, preferably including a log
message. ;)
>
> Index: src/logmsg.c
> ===================================================================
> RCS file: /var/cvs/src/gnu/usr.bin/cvs/src/logmsg.c,v
> retrieving revision 1.4
> diff -u -p -r1.4 logmsg.c
> --- src/logmsg.c 4 Mar 2012 04:05:15 -0000 1.4
> +++ src/logmsg.c 15 Aug 2016 03:25:27 -0000
> @@ -346,7 +346,7 @@ do_editor (dir, messagep, repository, ch
> {
> (void) printf ("\nLog message unchanged or not specified\n");
> (void) printf ("a)bort, c)ontinue, e)dit, !)reuse this message
> unchanged for remaining dirs\n");
> - (void) printf ("Action: (continue) ");
> + (void) printf ("Action: (abort) ");
> (void) fflush (stdout);
> line_length = get_line (&line, &line_chars_allocated, stdin);
> if (line_length < 0)
> @@ -358,14 +358,14 @@ do_editor (dir, messagep, repository, ch
> error (1, 0, "aborting");
> }
> else if (line_length == 0
> - || *line == '\n' || *line == 'c' || *line == 'C')
> - break;
> - if (*line == 'a' || *line == 'A')
> + || *line == '\n' || *line == 'a' || *line == 'A')
> {
> if (unlink_file (fname) < 0)
> error (0, errno, "warning: cannot remove temp file %s",
> fname);
> error (1, 0, "aborted by user");
> }
> + if (*line == 'c' || *line == 'C')
> + break;
> if (*line == 'e' || *line == 'E')
> goto again;
> if (*line == '!')
>