From: Chandra Pratap Date: Sun, 21 Jun 2026 06:42:00 GMT Subject: Re: [PATCH v6 2/3] revision: add peek functions for lookahead Message-ID: In-Reply-To: <20260620-ps-pre-commit-indent-v6-2-cdc6d8fd5fbc@gmail.com> > +int revision_has_commits_after (struct rev_info *revs, int n) > +{ > + struct topo_walk_info *info = revs->topo_walk_info; > + > + if (info) { > + int visible = 0; > + for (size_t i = 0; i < info->topo_queue.nr && visible < n; i++) { > + struct commit *c = info->topo_queue.array[i].data; > + if (get_commit_action(revs, c) == commit_show) > + visible++; > + } > + return visible > n-1; Nit: I think 'return visible >= n' will be more readable here. As in, more in-line with this function's description (below). > + if (revs->commits) { > + struct commit_list *cl; > + int visible = 0; > + for (cl = revs->commits; cl && visible < n; cl = cl->next) { > + if (get_commit_action(revs, cl->item) == commit_show) > + visible++; > + } > + return visible > n-1; Same here. > + } > + > + return 0; > +} > + > static void trace2_topo_walk_statistics_atexit(void) > { > struct json_writer jw = JSON_WRITER_INIT; > diff --git a/revision.h b/revision.h > index 00c392be37..a10c6b0940 100644 > --- a/revision.h > +++ b/revision.h > @@ -572,4 +572,14 @@ int rewrite_parents(struct rev_info *revs, > */ > struct commit_list *get_saved_parents(struct rev_info *revs, const struct commit *commit); > > +/* > + * Peek into revision's next commit without consuming it. > + */ > +struct commit *revision_peek_next_commit(struct rev_info *revs); > + > +/* > + * Check if there are n more commits to be shown yet. Shouldn't this be "n or more"? > +int revision_has_commits_after(struct rev_info *revs, int n); > + > #endif > > -- > 2.54.0