threads / patch / 37234

patchinit: avoid superfluous real_path() calls

Subject: [PATCH] init: avoid superfluous real_path() calls

## tl;dr

One message between Jul 28, 2014 and Jul 28, 2014. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

René Scharfe· Jul 28, 2014, 18:42 UTC · lore

Feeding the result of a real_path() call to real_path() again doesn't change that result -- the returned path won't get any more real. Avoid such a double call in set_git_dir_init() and for the same reason stop calling real_path() before feeding paths to set_git_work_tree(), as the latter already takes care of that.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
---
 builtin/init-db.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
Show changes to builtin/init-db.c +4 −4
diff --git a/builtin/init-db.c b/builtin/init-db.c
index 56f85e2..6d8ac2c 100644
--- a/builtin/init-db.c
+++ b/builtin/init-db.c
@@ -330,12 +330,12 @@ int set_git_dir_init(const char *git_dir, const char *real_git_dir,
 		 * moving the target repo later on in separate_git_dir()
 		 */
 		git_link = xstrdup(real_path(git_dir));
+		set_git_dir(real_path(real_git_dir));
 	}
 	else {
-		real_git_dir = real_path(git_dir);
+		set_git_dir(real_path(git_dir));
 		git_link = NULL;
 	}
-	set_git_dir(real_path(real_git_dir));
 	return 0;
 }
 
@@ -578,7 +578,7 @@ int cmd_init_db(int argc, const char **argv, const char *prefix)
 				die_errno (_("Cannot access current working directory"));
 		}
 		if (work_tree)
-			set_git_work_tree(real_path(work_tree));
+			set_git_work_tree(work_tree);
 		else
 			set_git_work_tree(git_work_tree_cfg);
 		if (access(get_git_work_tree(), X_OK))
@@ -587,7 +587,7 @@ int cmd_init_db(int argc, const char **argv, const char *prefix)
 	}
 	else {
 		if (work_tree)
-			set_git_work_tree(real_path(work_tree));
+			set_git_work_tree(work_tree);
 	}
 
 	set_git_dir_init(git_dir, real_git_dir, 1);
-- 
2.0.2

← back to recent threads