Re: [PATCH] Handle double slashes in make_relative_path()
- From
Thomas Rast <trast@student.ethz.ch>
- Date
- Jan 22, 2010, 21:11 UTC
- Message-ID
- <201001222211.14743.trast@student.ethz.ch>
- In-Reply-To
- <7vpr52gbmu.fsf@alter.siamese.dyndns.org>
On Friday 22 January 2010 02:40:41 Junio C Hamano wrote:
Show 12 quoted lines
> > Now what is the goal of this patch? To allow people to have duplicated > slashes at random places in either abs or base, or is it only interested > in a particular input that is malformed? If the latter, what is the > permitted non-canonical input? > > If abs were "/a//b/c" and base were "/a/b", then the combination is > rejected by prefixcmp() and full "/a//b/c" is returned. Is it the > intended behaviour of the patch? > > I would actually have expected to see [a real fix that handles > duplicate slashes in all instances.]
It's not about *permitted* input; the problem is simply that the current function gives back *bogus* paths, which causes git to fail. So I only went for the minimal patch to fix this.
Not handling the abs="/a//b/c" base="/a/b" case seemed ok to me since that was never turned as a relative "c", hence there would not be any speed loss (nor gain) from my patch.
Does that answer the question?
As for your patch, thanks for coming up with a real fix. I read the amended version, and it seems correct to me.
--
Thomas Rast
trast@{inf,student}.ethz.ch