git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / mirror / code / 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

  List information: http://vger.kernel.org/majordomo-info.html

* 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 \
    --subject='Re: [PATCH v5 04/13] bisect--helper: reimplement `bisect_autostart` shell function in C' \
    /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

Code repositories for project(s) associated with this inbox:

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).