All of lore.kernel.org
 help / color / mirror / Atom feed
From: Moritz Neeb <lists@moritzneeb.de>
To: git@vger.kernel.org
Cc: Junio C Hamano <gitster@pobox.com>,
	Eric Sunshine <sunshine@sunshineco.com>
Subject: [PATCH v3 3/7] clean: read user input with strbuf_getline()
Date: Sun, 28 Feb 2016 06:13:39 +0100	[thread overview]
Message-ID: <56D28203.7040502@moritzneeb.de> (raw)
In-Reply-To: <56D28092.9090209@moritzneeb.de>

The inputs that are read are all answers that are given by the user
when interacting with git on the commandline. As these answers are
not supposed to contain a meaningful CR it is safe to
replace strbuf_getline_lf() can be replaced by strbuf_getline().

In the subsequent codepath, the input is trimmed. This leads to
accepting user input with spaces, e.g. "  y ", as a valid answer in
the interactive cleaning process.

Although trimming would not be required anymore to remove a potential CR,
we don't want to change the existing behavior with this patch.
Thus, the trimming is kept in place.

Signed-off-by: Moritz Neeb <lists@moritzneeb.de>
---
 builtin/clean.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/builtin/clean.c b/builtin/clean.c
index 7b08237..956283d 100644
--- a/builtin/clean.c
+++ b/builtin/clean.c
@@ -570,7 +570,7 @@ static int *list_and_choose(struct menu_opts *opts, struct menu_stuff *stuff)
 			       clean_get_color(CLEAN_COLOR_RESET));
 		}
 
-		if (strbuf_getline_lf(&choice, stdin) != EOF) {
+		if (strbuf_getline(&choice, stdin) != EOF) {
 			strbuf_trim(&choice);
 		} else {
 			eof = 1;
@@ -652,7 +652,7 @@ static int filter_by_patterns_cmd(void)
 		clean_print_color(CLEAN_COLOR_PROMPT);
 		printf(_("Input ignore patterns>> "));
 		clean_print_color(CLEAN_COLOR_RESET);
-		if (strbuf_getline_lf(&confirm, stdin) != EOF)
+		if (strbuf_getline(&confirm, stdin) != EOF)
 			strbuf_trim(&confirm);
 		else
 			putchar('\n');
@@ -750,7 +750,7 @@ static int ask_each_cmd(void)
 			qname = quote_path_relative(item->string, NULL, &buf);
 			/* TRANSLATORS: Make sure to keep [y/N] as is */
 			printf(_("Remove %s [y/N]? "), qname);
-			if (strbuf_getline_lf(&confirm, stdin) != EOF) {
+			if (strbuf_getline(&confirm, stdin) != EOF) {
 				strbuf_trim(&confirm);
 			} else {
 				putchar('\n');
-- 
2.4.3

  parent reply	other threads:[~2016-02-28  5:15 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-30 17:51 [PATCH 0/5] Replacing strbuf_getline_lf() by strbuf_getline() on trimmed input Moritz Neeb
2016-01-30 18:03 ` [PATCH 1/5] bisect: read bisect paths with strbuf_getline() Moritz Neeb
2016-02-01 21:30   ` Junio C Hamano
2016-02-14 21:01     ` Moritz Neeb
2016-02-15  5:05       ` Junio C Hamano
2016-02-21 23:48         ` Moritz Neeb
2016-02-22  0:07         ` Moritz Neeb
2016-01-30 18:04 ` [PATCH 2/5] clean: read user input " Moritz Neeb
2016-02-01 21:30   ` Junio C Hamano
2016-01-30 18:05 ` [PATCH 3/5] notes: read copied notes " Moritz Neeb
2016-02-01 21:34   ` Junio C Hamano
2016-01-30 18:05 ` [PATCH 4/5] remote: read $GIT_DIR/branches/* " Moritz Neeb
2016-01-30 18:05 ` [PATCH 5/5] wt-status: read rebase todolist " Moritz Neeb
2016-02-01 21:39   ` Junio C Hamano
2016-02-22  1:00 ` [PATCH v2 0/6] replacing strbuf_getline_lf() by strbuf_getline() on trimmed input Moritz Neeb
2016-02-22  1:15   ` [PATCH v2 1/6] quote: remove leading space in sq_dequote_step Moritz Neeb
2016-02-22  1:15   ` [PATCH v2 2/6] bisect: read bisect paths with strbuf_getline() Moritz Neeb
2016-02-22  1:16   ` [PATCH v2 4/6] notes: read copied notes " Moritz Neeb
2016-02-22  2:41     ` Eric Sunshine
2016-02-22 19:27       ` Junio C Hamano
2016-02-22  1:17   ` [PATCH v2 6/6] wt-status: read rebase todolist " Moritz Neeb
2016-02-22 19:30     ` Junio C Hamano
2016-02-22  1:20   ` [PATCH v2 3/6] clean: read user input " Moritz Neeb
2016-02-22  2:27     ` Eric Sunshine
2016-02-22  7:40       ` Moritz Neeb
2016-02-22 19:40       ` Junio C Hamano
2016-02-22  1:22   ` [PATCH v2 5/6] remote: read $GIT_DIR/branches/* " Moritz Neeb
2016-02-22 19:09     ` Junio C Hamano
2016-02-28  5:07   ` [PATCH v3 0/7] replacing strbuf_getline_lf() by strbuf_getline() Moritz Neeb
2016-02-28  5:13     ` [PATCH v3 1/7] quote: remove leading space in sq_dequote_step Moritz Neeb
2016-02-28  5:13     ` [PATCH v3 2/7] bisect: read bisect paths with strbuf_getline() Moritz Neeb
2016-02-28  6:33       ` Eric Sunshine
2016-02-28  7:30         ` Moritz Neeb
2016-02-28  5:13     ` Moritz Neeb [this message]
2016-02-28  6:36       ` [PATCH v3 3/7] clean: read user input " Eric Sunshine
2016-02-28  7:36         ` Moritz Neeb
2016-02-28  5:13     ` [PATCH v3 4/7] notes copy --stdin: split lines with string_list_split() Moritz Neeb
2016-02-28  6:56       ` Eric Sunshine
2016-02-28  7:47         ` Moritz Neeb
2016-02-28 16:02           ` Eric Sunshine
2016-02-28  5:13     ` [PATCH v3 5/7] notes copy --stdin: read lines with strbuf_getline() Moritz Neeb
2016-02-28  5:14     ` [PATCH v3 6/7] remote: read $GIT_DIR/branches/* " Moritz Neeb
2016-02-28  5:14     ` [PATCH v3 7/7] wt-status: read rebase todolist " Moritz Neeb
2016-02-28  6:30     ` [PATCH v3 0/7] replacing strbuf_getline_lf() by strbuf_getline() Eric Sunshine
2016-02-28  7:20       ` Moritz Neeb
2016-02-28  8:03     ` Moritz Neeb
2016-02-29  8:30     ` [PATCH v4 " Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 1/7] quote: remove leading space in sq_dequote_step Moritz Neeb
2016-02-29 19:01         ` Junio C Hamano
2016-02-29 21:45           ` Moritz Neeb
2016-02-29 21:48             ` Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 2/7] bisect: read bisect paths with strbuf_getline() Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 3/7] clean: read user input " Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 5/7] notes copy --stdin: split lines with string_list_split() Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 6/7] remote: read $GIT_DIR/branches/* with strbuf_getline() Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 7/7] wt-status: read rebase todolist " Moritz Neeb
2016-02-29  8:36       ` [PATCH v4 4/7] notes copy --stdin: read lines " Moritz Neeb
2016-02-29 18:19         ` Eric Sunshine
2016-02-29 19:26           ` Moritz Neeb
2016-02-29 19:48             ` Eric Sunshine
2016-02-29 18:26       ` [PATCH v4 0/7] replacing strbuf_getline_lf() by strbuf_getline() Eric Sunshine
2016-03-09  0:25       ` Moritz Neeb
2016-03-09  0:39         ` Junio C Hamano
2016-03-09  1:13           ` Moritz Neeb
2016-03-09 20:28             ` Junio C Hamano
2016-03-09  1:17         ` Eric Sunshine

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56D28203.7040502@moritzneeb.de \
    --to=lists@moritzneeb.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=sunshine@sunshineco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.