git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 02/10] bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 6, 2020, 19:05 UTC
Message-ID
<xmqqimjh2tjq.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<CAN7CjDCb3Bo-reyCZBxMuxX7ecCRLo6XaZHUE5fKGnQav9g_xQ@mail.gmail.com>
"Miriam R." <mirucam@gmail.com> writes:
> To my understanding, it looks like calling reset_revision_walk() after
> the while() loop should be enough. Am I right or am I missing
> something?

I suspect that reset_revision_walk() may be too-big a hammer, as it clears everything, regardless of the reason why the flag bits were set. On the other hand, the clearly strategy that uses clear_commit_marks() is to clear only the flag bits that were set during the previous revision walk from only the commits that were walked during the previous revision walk.

I offhand do not know what flag bits on what objects that were not involved in the previous revision walk are still necessary at the point of the call made by the caller (that's a question for your mentors who volunteered their expertise on the program in question), so if there isn't any, reset_revision_walk() may be an easy way out. I just do not know if it clears too much to break the code that comes after the function returns.

Thanks.
Previous: Miriam R.Next: Christian Couder
Message 10 of 20 in “Finish converting git bisect to C part 2”
  1. Miriam RubioFeb 26, 2020
  2. 01/10 bisect--helper: introduce new `write_in_file()` functionMiriam Rubio, Feb 26, 2020
  3. Junio C HamanoFeb 26, 2020
  4. 03/10 bisect--helper: finish porting `bisect_start()` to CMiriam Rubio, Feb 26, 2020
  5. 02/10 bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in CMiriam Rubio, Feb 26, 2020
  6. Junio C HamanoFeb 26, 2020
  7. Miriam R.Feb 27, 2020
  8. Junio C HamanoFeb 27, 2020
  9. Miriam R.Mar 6, 2020
  10. Junio C HamanoMar 6, 2020
  11. Christian CouderMar 11, 2020
  12. 04/10 bisect--helper: retire `--bisect-clean-state` subcommandMiriam Rubio, Feb 26, 2020
  13. 05/10 bisect--helper: retire `--next-all` subcommandMiriam Rubio, Feb 26, 2020
  14. 06/10 bisect--helper: reimplement `bisect_autostart` shell function in CMiriam Rubio, Feb 26, 2020
  15. Johannes SchindelinFeb 27, 2020
  16. 07/10 bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in CMiriam Rubio, Feb 26, 2020
  17. Johannes SchindelinFeb 27, 2020
  18. 08/10 bisect--helper: retire `--check-expected-revs` subcommandMiriam Rubio, Feb 26, 2020
  19. 09/10 bisect--helper: retire `--write-terms` subcommandMiriam Rubio, Feb 26, 2020
  20. 10/10 bisect--helper: retire `--bisect-autostart` subcommandMiriam Rubio, Feb 26, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.