浏览代码

Fix segfault in unit tests

svn:r4760
Nick Mathewson 20 年之前
父节点
当前提交
c031d14633
共有 2 个文件被更改,包括 9 次插入1 次删除
  1. 7 0
      src/or/config.c
  2. 2 1
      src/or/test.c

+ 7 - 0
src/or/config.c

@@ -1332,6 +1332,13 @@ options_dup(config_format_t *fmt, or_options_t *old)
   return newopts;
 }
 
+/** Return a new empty or_options_t.  Used for testing. */
+or_options_t *
+options_new(void)
+{
+  return config_alloc(&options_format);
+}
+
 /** Set <b>options</b> to hold reasonable defaults for most options.
  * Each option defaults to zero. */
 void

+ 2 - 1
src/or/test.c

@@ -35,6 +35,7 @@ void get_platform_str(char *platform, size_t len);
 int is_obsolete_version(const char *myversion, const char *start);
 size_t read_escaped_data(const char *data, size_t len, int translate_newlines,
                          char **out);
+or_options_t *options_new(void);
 
 static char temp_dir[256];
 
@@ -1522,7 +1523,7 @@ test_rend_fns(void)
 int
 main(int c, char**v)
 {
-  or_options_t *options = tor_malloc_zero(sizeof(or_options_t));
+  or_options_t *options = options_new();
   network_init();
   options_init(options);
   set_options(options);