Re: [PATCH] rerere should not repeat the earlier hunks in later ones
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Apr 5, 2007, 13:03 UTC
- Message-ID
- <Pine.LNX.4.63.0704051502540.4045@wbgn013.biozentrum.uni-wuerzburg.de>
- In-Reply-To
- <7vmz1nycjp.fsf@assigned-by-dhcp.cox.net>
Hi,
On Wed, 4 Apr 2007, Junio C Hamano wrote:
Show 26 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>
> >> > @@ -112,7 +112,8 @@ static int handle_file(const char *path,
> >> > else if (!prefixcmp(buf, ">>>>>>> ")) {
> >> > hunk_no++;
> >> > hunk = 0;
> >> > - if (memcmp(one->ptr, two->ptr, one->nr < two->nr ?
> >> > + if (one->nr > two->nr || memcmp(one->ptr, two->ptr,
> >> > + one->nr < two->nr ?
> >> > one->nr : two->nr) > 0) {
> >> > struct buffer *swap = one;
> >> > one = two;
> >> >
> >> > in case that one conflicting region is prefix of the other one.
> >>
> >> If one is not a prefix of two but simply longer what does that
> >> code do?
> >
> > You're right. With the eager merging algorithm, it is no longer possible
> > that one side is a strict prefix of the other.
> >
> > So please forget about my comment.
>
> Now you confused me even more...
>
> Isn't there a case where one is full of text and two is empty?If one is empty, yes, there can be a conflict. I only did not think of the empty string as a prefix to everything, but you are right.
Ciao, Dscho