On Tue, Nov 6, 2012 at 9:15 PM, Greg Ewing <greg.ewing@canterbury.ac.nz>wrote:
Bruce Leban wrote:
If you change the semantics so that it either (1) it always always
includes a trailing / or (2) it includes a trailing slash if the two paths have it in common, then you don't have the weirdness that in this case it returns a slash and in others it doesn't. I am slightly inclined to (1) at this point.
But then the common prefix of "/a/b" and "/a/c" would be "/a/", which would be very unexpected -- usually the dirname of a path is not considered to include a trailing slash.
Although less confusing than the current behavior :-)
The special treatment of the root directory is no weirder than it is anywhere else. It's already special, since in unix it's the only case where a trailing slash is semantically significant. (To the kernel, at least -- a few command line utilities break this rule, but they're screwy.)
That's reasonable. Perhaps it's sufficient to document it clearly. --- Bruce