Hi Liam,

On Thu, 25 May 2017, Liam Beguin wrote:

> Johannes Schindelin <johannes.schinde...@gmx.de> writes:
> [...]
> > +   if (rearranged) {
> > +           struct strbuf buf = STRBUF_INIT;
> > +
> > +           for (i = 0; i < todo_list.nr; i++) {
> > +                   enum todo_command command = todo_list.items[i].command;
> > +                   int cur = i;
> > +
> > +                   /*
> > +                    * Initially, all commands are 'pick's. If it is a
> > +                    * fixup or a squash now, we have rearranged it.
> > +                    */
> > +                   if (is_fixup(command))
> > +                           continue;
> > +
> > +                   while (cur >= 0) {
> > +                           int offset = todo_list.items[cur].offset_in_buf;
> > +                           int end_offset = cur + 1 < todo_list.nr ?
> > +                                   todo_list.items[cur + 1].offset_in_buf :
> > +                                   todo_list.buf.len;
> > +                           char *bol = todo_list.buf.buf + offset;
> > +                           char *eol = todo_list.buf.buf + end_offset;
> 
> I got a little confused with these offsets. I know it was part of a
> previous series, but maybe we could add a description to the fields
> of `struct todo_list` and `struct todo_item`.

You mean "offset_in_buf"?

Sure, I can add a comment there. I would like to keep it out of this patch
series, though, as the purpose of it is to accelerate rebase -i by moving
logic from the (slow) shell script code to the (decently fast) C code.

Ciao,
Johannes

Reply via email to