Thread (5 messages) flat view 5 messages, 4 authors, 2016-06-15

Re: [PATCH] git-init: set core.worktree if GIT_WORK_TREE is specified

From: Johannes Sixt <hidden>
Date: 2016-06-15 22:43:19

Matthias Lederhofer wrote:
quoted
+     if (!getcwd(cwd, sizeof(cwd)) || cwd[0] != '/')
+             die("Unable to read current working directory");
Dscho just pointed out that this causes problems on windows.  The same
is also in setup_git_directory_gently and was there before I touched
it, introduced by Linus in d288a700.  What was the original reason to
do this?  Are there implementations of getcwd which return a relative
path?

Additionally there are other places which need to check if some user
supplied path is absolute.  Should we have a macro/function for that
which depends on the os and checks for path[0] = '/' on unix and
perhaps path[1] = ':' on windows?
I've modified some places (that check for an absolute path) in the MinGW
port to read (path[0] == '/' || path[1] == ':'). I don't think that it's
necessary that you cater for this case in your code - I'll take care of
it in the MinGW port. Of course, a hint that there is another place to
watch out for, or even better a test case in t/, is most appreciated.

I still hope to find some time to rework the MinGW port. Then such
details will be hidden behind a is_path_absolute() function. Or maybe
getcwd_or_die() ;)

-- Hannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help