Commit b494cdbdb2833d1233291eea7eb5d9290257131e

Ben Straub 2012-07-27T11:50:32

Checkout: handle deeply-nested submodules better. Now creating intermediate directories where the submodule is deep, like "src/deps/foosubmodule".

1
2
3
4
5
6
7
8
9
10
11
12
13
14
diff --git a/src/checkout.c b/src/checkout.c
index 0520547..24d2149 100644
--- a/src/checkout.c
+++ b/src/checkout.c
@@ -120,7 +120,8 @@ static int checkout_walker(const char *path, const git_tree_entry *entry, void *
 
 	case GIT_OBJ_COMMIT:
 		/* Submodule */
-		retcode = p_mkdir(git_buf_cstr(&fnbuf), 0644);
+		git_futils_mkpath2file(git_buf_cstr(&fnbuf), data->opts->dir_mode);
+		retcode = p_mkdir(git_buf_cstr(&fnbuf), data->opts->dir_mode);
 		break;
 
 	case GIT_OBJ_BLOB: