[tor-commits] [tor/master] Small refactoring: explain G, M, E, D, T initialization

nickm at torproject.org nickm at torproject.org
Wed Oct 26 20:41:39 UTC 2016


commit 77d14b5f56df69776a732612d6631b558c071fb2
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Oct 26 16:39:59 2016 -0400

    Small refactoring: explain G,M,E,D,T initialization
---
 src/or/dirvote.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/or/dirvote.c b/src/or/dirvote.c
index 3d23119..d44ed7f 100644
--- a/src/or/dirvote.c
+++ b/src/or/dirvote.c
@@ -1335,7 +1335,7 @@ networkstatus_compute_consensus(smartlist_t *votes,
   smartlist_t *flags;
   const char *flavor_name;
   uint32_t max_unmeasured_bw_kb = DEFAULT_MAX_UNMEASURED_BW_KB;
-  int64_t G=0, M=0, E=0, D=0, T=0; /* For bandwidth weights */
+  int64_t G, M, E, D, T; /* For bandwidth weights */
   const routerstatus_format_type_t rs_format =
     flavor == FLAV_NS ? NS_V3_CONSENSUS : NS_V3_CONSENSUS_MICRODESC;
   char *params = NULL;
@@ -1368,8 +1368,13 @@ networkstatus_compute_consensus(smartlist_t *votes,
   }
 
   if (consensus_method >= MIN_METHOD_FOR_INIT_BW_WEIGHTS_ONE) {
+    /* It's smarter to initialize these weights to 1, so that later on,
+     * we can't accidentally divide by zero. */
     G = M = E = D = 1;
     T = 4;
+  } else {
+    /* ...but originally, they were set to zero. */
+    G = M = E = D = T = 0;
   }
 
   /* Compute medians of time-related things, and figure out how many





More information about the tor-commits mailing list