[tor-commits] [tor/master] Don't build format_helper_exit_status on win32

nickm at torproject.org nickm at torproject.org
Mon Jul 15 16:18:28 UTC 2013


commit 449b2b7c58e5dd5b33941a5142524a66c64c98ec
Author: Nick Mathewson <nickm at torproject.org>
Date:   Mon Jul 15 12:17:23 2013 -0400

    Don't build format_helper_exit_status on win32
    
    The only thing that used format_helper_exit_status on win32 was the
    unit tests. This caused an error when we tried to leave a static
    format_helper_exit_status lying around in a production object file.
    
    The easiest solution is to admit that this way of dealing with process
    exit status is Unix-only.
---
 src/common/util.c    |    2 ++
 src/test/test_util.c |    4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/common/util.c b/src/common/util.c
index f5bacfa..95dea4b 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -3443,6 +3443,7 @@ format_hex_number_for_helper_exit_status(unsigned int x, char *buf,
   return len;
 }
 
+#ifndef _WIN32
 /** Format <b>child_state</b> and <b>saved_errno</b> as a hex string placed in
  * <b>hex_errno</b>.  Called between fork and _exit, so must be signal-handler
  * safe.
@@ -3551,6 +3552,7 @@ format_helper_exit_status(unsigned char child_state, int saved_errno,
  done:
   return res;
 }
+#endif
 
 /* Maximum number of file descriptors, if we cannot get it via sysconf() */
 #define DEFAULT_MAX_FD 256
diff --git a/src/test/test_util.c b/src/test/test_util.c
index 53626bb..603eded 100644
--- a/src/test/test_util.c
+++ b/src/test/test_util.c
@@ -2281,6 +2281,7 @@ test_util_load_win_lib(void *ptr)
 }
 #endif
 
+#ifndef _WIN32
 static void
 clear_hex_errno(char *hex_errno)
 {
@@ -2324,6 +2325,7 @@ test_util_exit_status(void *ptr)
  done:
   ;
 }
+#endif
 
 #ifndef _WIN32
 /** Check that fgets waits until a full line, and not return a partial line, on
@@ -3346,8 +3348,8 @@ struct testcase_t util_tests[] = {
 #ifdef _WIN32
   UTIL_TEST(load_win_lib, 0),
 #endif
-  UTIL_TEST(exit_status, 0),
 #ifndef _WIN32
+  UTIL_TEST(exit_status, 0),
   UTIL_TEST(fgets_eagain, TT_SKIP),
 #endif
   UTIL_TEST(spawn_background_ok, 0),



More information about the tor-commits mailing list