Browse Source

Merge remote branch 'origin/maint-0.2.1'

Nick Mathewson 14 years ago
parent
commit
3b4b6009a0
2 changed files with 6 additions and 0 deletions
  1. 2 0
      src/common/tortls.c
  2. 4 0
      src/or/router.c

+ 2 - 0
src/common/tortls.c

@@ -201,6 +201,8 @@ tls_log_errors(tor_tls_t *tls, int severity, int domain, const char *doing)
     if (!state)
       state = (st>=0)?ssl_state_to_string(st):"---";
     if (!msg) msg = "(null)";
+    if (!lib) lib = "(null)";
+    if (!func) func = "(null)";
     if (doing) {
       log(severity, domain, "TLS error while %s%s%s: %s (in %s:%s:%s)",
           doing, addr?" with ":"", addr?addr:"",

+ 4 - 0
src/or/router.c

@@ -1382,6 +1382,7 @@ router_rebuild_descriptor(int force)
   if (extrainfo_dump_to_string(ei->cache_info.signed_descriptor_body,
                                ei_size, ei, get_identity_key()) < 0) {
     log_warn(LD_BUG, "Couldn't generate extra-info descriptor.");
+    routerinfo_free(ri);
     extrainfo_free(ei);
     return -1;
   }
@@ -1398,6 +1399,8 @@ router_rebuild_descriptor(int force)
   if (router_dump_router_to_string(ri->cache_info.signed_descriptor_body, 8192,
                                    ri, get_identity_key())<0) {
     log_warn(LD_BUG, "Couldn't generate router descriptor.");
+    routerinfo_free(ri);
+    extrainfo_free(ei);
     return -1;
   }
   ri->cache_info.signed_descriptor_len =
@@ -1984,6 +1987,7 @@ extrainfo_dump_to_string(char *s, size_t maxlen, extrainfo_t *extrainfo,
       log_err(LD_BUG,
               "We just generated an extrainfo descriptor we can't parse.");
       log_err(LD_BUG, "Descriptor was: <<%s>>", s);
+      tor_free(s_dup);
       return -1;
     }
     tor_free(s_dup);