Преглед изворни кода

Clean up my 1776 fix a bit

Sebastian notes (and I think correctly) that one of our ||s should
have been an &&, which simplifies a boolean expression to decide
whether to replace bridges.  I'm also refactoring out the negation at
the start of the expression, to make it more readable.
Nick Mathewson пре 15 година
родитељ
комит
45b500d5a6
1 измењених фајлова са 6 додато и 2 уклоњено
  1. 6 2
      src/or/routerlist.c

+ 6 - 2
src/or/routerlist.c

@@ -3238,8 +3238,12 @@ router_add_to_routerlist(routerinfo_t *router, const char **msg,
     const int was_bridge = old_router &&
       old_router->purpose == ROUTER_PURPOSE_BRIDGE;
 
-    if (! (routerinfo_is_a_configured_bridge(router) &&
-           (router->purpose == ROUTER_PURPOSE_BRIDGE || !was_bridge))) {
+    if (routerinfo_is_a_configured_bridge(router) &&
+        router->purpose == ROUTER_PURPOSE_BRIDGE &&
+        !was_bridge) {
+      log_info(LD_DIR, "Replacing non-bridge descriptor with bridge "
+               "descriptor for router '%s'", router->nickname);
+    } else {
       log_info(LD_DIR,
                "Dropping descriptor that we already have for router '%s'",
                router->nickname);