diff options
author | Russell Belfer <rb@github.com> | 2013-01-03 23:04:03 +0400 |
---|---|---|
committer | Russell Belfer <rb@github.com> | 2013-01-03 23:04:03 +0400 |
commit | b8a1ea7cf9e23e394d09b0d051b696bd7acc2cf9 (patch) | |
tree | 194e4fed18e82e2fd22e23d5bc23e6be6eb1ab63 /tests-clar/core | |
parent | 54254a0fe2ee2d2778568322ae3a9e8812911bb5 (diff) |
Fix core::env cleanup code
Mark fake home directories that failed to be created, so we won't
try to remove them and have cleanup just use p_rmdir.
Diffstat (limited to 'tests-clar/core')
-rw-r--r-- | tests-clar/core/env.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/tests-clar/core/env.c b/tests-clar/core/env.c index 27e52ec3b..72ef66819 100644 --- a/tests-clar/core/env.c +++ b/tests-clar/core/env.c @@ -46,8 +46,12 @@ void test_core_env__cleanup(void) env_save[i] = NULL; } + /* these will probably have already been cleaned up, but if a test + * fails, then it's probably good to try and clear out these dirs + */ for (val = home_values; *val != NULL; val++) { - cl_fixture_cleanup(*val); + if (**val != '\0') + (void)p_rmdir(*val); } } @@ -79,8 +83,10 @@ void test_core_env__0(void) * we are on a filesystem that doesn't support the * characters in question and skip this test... */ - if (p_mkdir(*val, 0777) != 0) + if (p_mkdir(*val, 0777) != 0) { + *val = ""; /* mark as not created */ continue; + } cl_git_pass(git_path_prettify(&path, *val, NULL)); @@ -130,6 +136,8 @@ void test_core_env__0(void) } } #endif + + (void)p_rmdir(*val); } git_buf_free(&path); |