Merge branch 'bw/realpath-wo-chdir' into next
authorJunio C Hamano <gitster@pobox.com>
Thu, 22 Dec 2016 20:09:52 +0000 (12:09 -0800)
committerJunio C Hamano <gitster@pobox.com>
Thu, 22 Dec 2016 20:09:52 +0000 (12:09 -0800)
commitfea8fa870ff450f9917abb0fe71e6eb617cf6d8f
treef6263a808f1b44da488930fd7a34b4c9deb6cd63
parent209eee05300f7b4b0fdc77e0788b2c175f3b46b6
parente9a379c352b02ca560c58a56aa723994aa42666f
Merge branch 'bw/realpath-wo-chdir' into next

The implementation of "real_path()" was to go there with chdir(2)
and call getcwd(3), but this obviously wouldn't be usable in a
threaded environment.  Rewrite it to manually resolve relative
paths including symbolic links in path components.

* bw/realpath-wo-chdir:
  real_path: canonicalize directory separators in root parts
  real_path: have callers use real_pathdup and strbuf_realpath
  real_path: create real_pathdup
  real_path: convert real_path_internal to strbuf_realpath
  real_path: resolve symlinks by hand
cache.h
dir.c
environment.c
sha1_file.c
submodule.c
transport.c
worktree.c