Hi,
On Thu, 19 Jun 2008, Daniel Barkalow wrote:
On Thu, 19 Jun 2008, Johannes Schindelin wrote:
quoted
On Wed, 18 Jun 2008, Daniel Barkalow wrote:
quoted
diff --git a/setup.c b/setup.c
index d630e37..1643ee4 100644
--- a/setup.c
+++ b/setup.c
@@ -292,7 +292,8 @@ void setup_work_tree(void)
work_tree = get_git_work_tree();
git_dir = get_git_dir();
if (!is_absolute_path(git_dir))
I suspect it needs "work_tree &&" here.
I'm not clear on the semantics of !get_git_work_tree(); is a non-absolute
path for git_dir right then?
My reading was: if there is no work_tree, then a relative git_dir is just
fine, since we are quite unlikely to jump around in the file system.
And your implementation of make_relative_path() is nice enough to a
(work_tree ==) base == NULL, but would return the absolute path in that
case.
Haven't had time to test anything, though.
Ciao,
Dscho