소스 검색

Merge remote-tracking branch 'origin/maint-0.2.2'

Nick Mathewson 13 년 전
부모
커밋
85ac832a14
2개의 변경된 파일14개의 추가작업 그리고 4개의 파일을 삭제
  1. 4 0
      changes/win_tmp_dir
  2. 10 4
      src/test/test.c

+ 4 - 0
changes/win_tmp_dir

@@ -0,0 +1,4 @@
+  o Unit tests:
+    - Use GetTempDir to find the proper temporary directory location on
+      Windows when generating temporary files for the unit tests.  Patch
+      by Gisle Vanem.

+ 10 - 4
src/test/test.c

@@ -84,10 +84,16 @@ setup_directory(void)
   if (is_setup) return;
 
 #ifdef MS_WINDOWS
-  // XXXX
-  tor_snprintf(temp_dir, sizeof(temp_dir),
-               "c:\\windows\\temp\\tor_test_%d", (int)getpid());
-  r = mkdir(temp_dir);
+  {
+    char buf[MAX_PATH];
+    const char *tmp = buf;
+    /* If this fails, we're probably screwed anyway */
+    if (!GetTempPath(sizeof(buf),buf))
+      tmp = "c:\\windows\\temp";
+    tor_snprintf(temp_dir, sizeof(temp_dir),
+                 "%s\\tor_test_%d", tmp, (int)getpid());
+    r = mkdir(temp_dir);
+  }
 #else
   tor_snprintf(temp_dir, sizeof(temp_dir), "/tmp/tor_test_%d", (int) getpid());
   r = mkdir(temp_dir, 0700);