Paths longer than PATH_MAX can be created and used on at least on some file systems. Currently we use getcwd() generally with a PATH_MAX- sized buffer. This series adds two functions, strbuf_getcwd() and xgetcwd(), then uses them to reduce the number of fixed-sized buffers and to allow us to handle longer working directory paths. Changes in v3: * all getcwd() calls are converted * the two strbuf_getcwd() examples from last round use xgetcwd() now, as suggested by Jeff * strbuf_add_absolute_path() is introduced René Scharfe (10): strbuf: add strbuf_getcwd() unix-sockets: use strbuf_getcwd() setup: convert setup_git_directory_gently_1 et al. to strbuf abspath: use strbuf_getcwd() to remember original working directory abspath: convert real_path_internal() to strbuf wrapper: add xgetcwd() use xgetcwd() to get the current directory or die use xgetcwd() to set $GIT_DIR abspath: convert absolute_path() to strbuf use strbuf_add_absolute_path() to add absolute paths Documentation/technical/api-strbuf.txt | 10 +++ abspath.c | 124 +++++++++------------------------ builtin/init-db.c | 24 +++---- builtin/rev-parse.c | 6 +- dir.c | 12 ++-- exec_cmd.c | 6 +- git-compat-util.h | 1 + git.c | 13 ++-- setup.c | 91 ++++++++++++------------ sha1_file.c | 2 +- strbuf.c | 46 ++++++++++++ strbuf.h | 3 + trace.c | 7 +- unix-socket.c | 14 ++-- wrapper.c | 8 +++ 15 files changed, 190 insertions(+), 177 deletions(-) -- 2.0.2 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html