From: Junio C Hamano <gitster@pobox.com>
To: Kirill Smelkov <kirr@mns.spb.ru>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 1/8] fixup! combine_diff: simplify intersect_paths() further
Date: Mon, 03 Feb 2014 11:40:18 -0800 [thread overview]
Message-ID: <xmqqy51sdly5.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <60ec61bdd2ef3cba7537e29c42f9c8a810da245d.1391430523.git.kirr@mns.spb.ru> (Kirill Smelkov's message of "Mon, 3 Feb 2014 16:47:15 +0400")
Kirill Smelkov <kirr@mns.spb.ru> writes:
> That cleanup patch is good, but I've found a bug in it. In the item removal
> code
>
>> + /* p->path not in q->queue[]; drop it */
>> + struct combine_diff_path *next = p->next;
>> +
>> + if ((*tail = next) != NULL)
>> + tail = &next->next;
>> + free(p);
>> continue;
>
> *tail = next
>
> is right, but
>
> tail = &next->next
>
> is wrong,
Heh, surely. We just have skipped, and the fact that tail points at
the pointer variable that points at the first of the remaining items
does not change with this skipping of next by assigning it to *tail.
An extra assignment to tail will skip one more, which is unnecessary.
next prev parent reply other threads:[~2014-02-03 19:40 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-03 12:47 [PATCH 0/8] `log -c` speedup (part 2) Kirill Smelkov
2014-02-03 12:47 ` [PATCH 1/8] fixup! combine_diff: simplify intersect_paths() further Kirill Smelkov
2014-02-03 19:40 ` Junio C Hamano [this message]
2014-02-03 12:47 ` [PATCH 2/8] tests: add checking that combine-diff emits only correct paths Kirill Smelkov
2014-02-03 23:10 ` Junio C Hamano
2014-02-05 10:36 ` Kirill Smelkov
2014-02-03 12:47 ` [PATCH 3/8] tree-diff: no need to manually verify that there is no mode change for a path Kirill Smelkov
2014-02-03 23:12 ` Junio C Hamano
2014-02-03 12:47 ` [PATCH 4/8] tree-diff: no need to pass match to skip_uninteresting() Kirill Smelkov
2014-02-03 12:47 ` [PATCH 5/8] combine-diff: move show_log_first logic/action out of paths scanning Kirill Smelkov
2014-02-03 23:21 ` Junio C Hamano
2014-02-03 12:47 ` [PATCH 6/8] combine-diff: Move changed-paths scanning logic into its own function Kirill Smelkov
2014-02-03 12:47 ` [PATCH 7/8] combine-diff: Fast changed-to-all-parents paths scanning Kirill Smelkov
2014-02-03 23:26 ` Junio C Hamano
2014-02-03 23:39 ` Junio C Hamano
2014-02-04 16:34 ` Kirill Smelkov
2014-02-04 18:37 ` Junio C Hamano
2014-02-05 16:51 ` Kirill Smelkov
2014-02-05 17:36 ` Junio C Hamano
2014-02-05 19:14 ` Kirill Smelkov
2014-02-05 19:42 ` Junio C Hamano
2014-02-05 20:22 ` Kirill Smelkov
2014-02-05 22:58 ` Junio C Hamano
2014-02-06 16:22 ` Kirill Smelkov
2014-02-04 0:00 ` Junio C Hamano
2014-02-03 12:47 ` [PATCH 8/8] combine-diff: bail out early, if num_paths=0 Kirill Smelkov
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=xmqqy51sdly5.fsf@gitster.dls.corp.google.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=kirr@mns.spb.ru \
/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.