diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2015-09-16 04:12:47 +0000 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2015-09-16 04:12:47 +0000 |
commit | b4d183a77aa01cac406aecdff8908f10cb3501cb (patch) | |
tree | 6673ffc807d3b813a83f041fe25a9085a198ca3e | |
parent | 33cad995899c960c777b3545dd58fd342ffdc64a (diff) | |
download | libgit2-b4d183a77aa01cac406aecdff8908f10cb3501cb.tar.gz |
checkout::tree tests: don't use static buffer
-rw-r--r-- | tests/checkout/tree.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/tests/checkout/tree.c b/tests/checkout/tree.c index 9217c12d9..3b84f43ce 100644 --- a/tests/checkout/tree.c +++ b/tests/checkout/tree.c @@ -989,15 +989,18 @@ void test_checkout_tree__filemode_preserved_in_index(void) mode_t read_filemode(const char *path) { + git_buf fullpath = GIT_BUF_INIT; struct stat st; - char pathabs[256] = {0}; + mode_t result; - strcat(pathabs, clar_sandbox_path()); - strcat(pathabs, "/testrepo/"); - strcat(pathabs, path); - cl_must_pass(p_stat(pathabs, &st)); + git_buf_joinpath(&fullpath, "testrepo", path); + cl_must_pass(p_stat(fullpath.ptr, &st)); - return st.st_mode; + result = GIT_PERMS_IS_EXEC(st.st_mode) ? 0100755 : 0100644; + + git_buf_free(&fullpath); + + return result; } void test_checkout_tree__filemode_preserved_in_workdir(void) |