All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Đoàn Trần Công Danh" <congdanhqx@gmail.com>
To: Miriam Rubio <mirucam@gmail.com>
Cc: git@vger.kernel.org, Pranit Bauva <pranit.bauva@gmail.com>,
	Lars Schneider <larsxschneider@gmail.com>,
	Christian Couder <chriscool@tuxfamily.org>,
	Johannes Schindelin <johannes.schindelin@gmx.de>,
	Tanushree Tumane <tanushreetumane@gmail.com>
Subject: Re: [PATCH v5 04/13] bisect--helper: reimplement `bisect_autostart` shell function in C
Date: Sun, 26 Jul 2020 08:53:16 +0700	[thread overview]
Message-ID: <20200726015300.GB8046@danh.dev> (raw)
In-Reply-To: <20200717105406.82226-5-mirucam@gmail.com>

On 2020-07-17 12:53:57+0200, Miriam Rubio <mirucam@gmail.com> wrote:
> From: Pranit Bauva <pranit.bauva@gmail.com>
> 
> +static int bisect_autostart(struct bisect_terms *terms)
> +{
> +	int res;
> +	const char *yesno;
> +
> +	if (file_is_not_empty(git_path_bisect_start()))
> +		return 0;
> +
> +	fprintf_ln(stderr, _("You need to start by \"git bisect "
> +			  "start\"\n"));
> +
> +	if (!isatty(STDIN_FILENO))
> +		return 0;
> +
> +	/*
> +	 * TRANSLATORS: Make sure to include [Y] and [n] in your
> +	 * translation. The program will only accept English input
> +	 * at this point.
> +	 */
> +	yesno = git_prompt(_("Do you want me to do it for you "
> +			     "[Y/n]? "), PROMPT_ECHO);
> +	res = tolower(*yesno) == 'n' ?
> +		-1 : bisect_start(terms, 0, NULL, 0);

Applying 01-04 ontop of v2.28.0-rc2-3-g418cca9555 (current git/git.git's master).

This line crash my git-bisect, MVCE:

	./git-bisect--helper --bisect-autostart

Since it will pass NULL as argv to bisect_start, which expect an array
of "argc + 1" of "char*" (the last element is NULL).
And bisect_start attempts to log bisect entry for this call.

Quick fix:
----------------8<---------------
diff --git a/builtin/bisect--helper.c b/builtin/bisect--helper.c
index 7662ec0ce3..25d3d07721 100644
--- a/builtin/bisect--helper.c
+++ b/builtin/bisect--helper.c
@@ -673,7 +673,7 @@ static int bisect_autostart(struct bisect_terms *terms)
 	yesno = git_prompt(_("Do you want me to do it for you "
 			     "[Y/n]? "), PROMPT_ECHO);
 	res = tolower(*yesno) == 'n' ?
-		-1 : bisect_start(terms, 0, NULL, 0);
+		-1 : bisect_start(terms, 0, empty_argv, 0);
 
 		return res;
 }
-------------------->8------------------


> +
> +		return res;

This line is over-indented. IOW, move left 1 TAB.

-- 
Danh

  reply	other threads:[~2020-07-26  1:53 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-17 10:53 [PATCH v5 00/13] Finish converting git bisect to C part 2 Miriam Rubio
2020-07-17 10:53 ` [PATCH v5 01/13] bisect--helper: BUG() in cmd_*() on invalid subcommand Miriam Rubio
2020-07-25 17:27   ` Shourya Shukla
2020-07-17 10:53 ` [PATCH v5 02/13] bisect--helper: use '-res' in 'cmd_bisect__helper' return Miriam Rubio
2020-07-25 17:31   ` Shourya Shukla
2020-07-25 23:03     ` Junio C Hamano
2020-07-27  5:42     ` Pratyush Yadav
2020-07-27  6:46       ` Pratyush Yadav
2020-07-27 16:21         ` Junio C Hamano
2020-07-17 10:53 ` [PATCH v5 03/13] bisect--helper: introduce new `write_in_file()` function Miriam Rubio
2020-07-17 16:33   ` Junio C Hamano
2020-07-17 10:53 ` [PATCH v5 04/13] bisect--helper: reimplement `bisect_autostart` shell function in C Miriam Rubio
2020-07-26  1:53   ` Đoàn Trần Công Danh [this message]
2020-07-17 10:53 ` [PATCH v5 05/13] bisect: call 'clear_commit_marks_all()' in 'bisect_next_all()' Miriam Rubio
2020-07-17 10:53 ` [PATCH v5 06/13] bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C Miriam Rubio
2020-07-17 16:54   ` Junio C Hamano
2020-07-25  0:19     ` Junio C Hamano
2020-07-17 10:54 ` [PATCH v5 07/13] bisect--helper: finish porting `bisect_start()` to C Miriam Rubio
2020-07-17 10:54 ` [PATCH v5 08/13] bisect--helper: retire `--bisect-clean-state` subcommand Miriam Rubio
2020-07-17 10:54 ` [PATCH v5 09/13] bisect--helper: retire `--next-all` subcommand Miriam Rubio
2020-07-17 10:54 ` [PATCH v5 10/13] bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C Miriam Rubio
2020-07-17 10:54 ` [PATCH v5 11/13] bisect--helper: retire `--check-expected-revs` subcommand Miriam Rubio
2020-07-17 10:54 ` [PATCH v5 12/13] bisect--helper: retire `--write-terms` subcommand Miriam Rubio
2020-07-17 10:54 ` [PATCH v5 13/13] bisect--helper: retire `--bisect-autostart` subcommand Miriam Rubio

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=20200726015300.GB8046@danh.dev \
    --to=congdanhqx@gmail.com \
    --cc=chriscool@tuxfamily.org \
    --cc=git@vger.kernel.org \
    --cc=johannes.schindelin@gmx.de \
    --cc=larsxschneider@gmail.com \
    --cc=mirucam@gmail.com \
    --cc=pranit.bauva@gmail.com \
    --cc=tanushreetumane@gmail.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.