commit 3f683aadcd03c311c1d987ab847a77dbe3fb2bf1 Author: Nick Mathewson nickm@torproject.org Date: Wed Jul 16 11:31:22 2014 +0200
When making a tempdir for windows unit tests, avoid an extra backslash
The extra \ is harmless, but mildly unpleasant.
Fixes 12392; bugfix on 0.2.2.25-alpha where we started using GetTempDir(). Based on a patch by Gisle Vanem. --- src/test/test.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/test/test.c b/src/test/test.c index 8bce9c9..429e79c 100644 --- a/src/test/test.c +++ b/src/test/test.c @@ -106,11 +106,18 @@ setup_directory(void) { char buf[MAX_PATH]; const char *tmp = buf; + const char *extra_backslash = ""; /* If this fails, we're probably screwed anyway */ if (!GetTempPathA(sizeof(buf),buf)) - tmp = "c:\windows\temp"; + tmp = "c:\windows\temp\"; + if (strcmpend(tmp, "\")) { + /* According to MSDN, it should be impossible for GetTempPath to give us + * an answer that doesn't end with . But let's make sure. */ + extra_backslash = "\"; + } tor_snprintf(temp_dir, sizeof(temp_dir), - "%s\tor_test_%d_%s", tmp, (int)getpid(), rnd32); + "%s%stor_test_%d_%s", tmp, extra_backslash, + (int)getpid(), rnd32); r = mkdir(temp_dir); } #else
tor-commits@lists.torproject.org