real_path(): properly handle nonexistent top-level paths
authorMichael Haggerty <mhagger@alum.mit.edu>
Thu, 6 Sep 2012 22:41:03 +0000 (00:41 +0200)
committerJunio C Hamano <gitster@pobox.com>
Thu, 6 Sep 2012 23:19:58 +0000 (16:19 -0700)
commitf4c21e89d7c6b578140e90c02b40eccb51ab8428
tree263d364a4ad03fd1def55d38d392f047224b511b
parent7bcf48dad83e7a07f27403c2ce9e5c29af9e317d
real_path(): properly handle nonexistent top-level paths

The change has two points:

1. Do not strip off a leading slash, because that erroneously turns an
   absolute path into a relative path.

2. Do not remove slashes from groups of multiple slashes; instead let
   chdir() handle them.  It could be, for example, that it wants to
   leave leading double-slashes alone.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
abspath.c
t/t0060-path-utils.sh