Sfoglia il codice sorgente

Fix memory leak in unit test for bridge distribution config.

Also, check for the actual message, and fix some string confusion,
while we're at it.

Fixes bug 24345; bugfix on 0.3.2.3-alpha.
Nick Mathewson 6 anni fa
parent
commit
a5b8b55c1c
2 ha cambiato i file con 8 aggiunte e 2 eliminazioni
  1. 3 0
      changes/bug24345
  2. 5 2
      src/test/test_config.c

+ 3 - 0
changes/bug24345

@@ -0,0 +1,3 @@
+  o Minor bugfixes (tests):
+    - Fix a unit test in one of the bridge-distribution test cases.
+      Fixes bug 24345; bugfix on 0.3.2.3-alpha.

+ 5 - 2
src/test/test_config.c

@@ -5454,7 +5454,7 @@ test_config_check_bridge_distribution_setting_not_a_bridge(void *arg)
   or_options_t* options = get_options_mutable();
   or_options_t* options = get_options_mutable();
   or_options_t* old_options = options;
   or_options_t* old_options = options;
   or_options_t* default_options = options;
   or_options_t* default_options = options;
-  char* message = (char*)("");
+  char* message = NULL;
   int ret;
   int ret;
 
 
   (void)arg;
   (void)arg;
@@ -5465,8 +5465,11 @@ test_config_check_bridge_distribution_setting_not_a_bridge(void *arg)
   ret = options_validate(old_options, options, default_options, 0, &message);
   ret = options_validate(old_options, options, default_options, 0, &message);
 
 
   tt_int_op(ret, OP_EQ, -1);
   tt_int_op(ret, OP_EQ, -1);
+  tt_str_op(message, OP_EQ, "You set BridgeDistribution, but you "
+            "didn't set BridgeRelay!");
  done:
  done:
-  return;
+  tor_free(message);
+  options->BridgeDistribution = NULL;
 }
 }
 
 
 /* If the BridgeDistribution setting was valid, 0 should be returned. */
 /* If the BridgeDistribution setting was valid, 0 should be returned. */