diff --git a/src/or/directory.c b/src/or/directory.c index 47af8f1504..fcee412173 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -1964,12 +1964,12 @@ dir_split_resource_into_fingerprints(const char *resource, for (i = 1; i < smartlist_len(fp_tmp); ++i) { char *cp = smartlist_get(fp_tmp, i); char *last = smartlist_get(fp_tmp2, smartlist_len(fp_tmp2)-1); - + if ((decode_hex && memcmp(cp, last, DIGEST_LEN)) - || (!decode_hex && strcasecmp(cp, last))) - smartlist_add(fp_tmp2, cp); + || (!decode_hex && strcasecmp(cp, last))) + smartlist_add(fp_tmp2, cp); else - tor_free(cp); + tor_free(cp); } smartlist_free(fp_tmp); fp_tmp = fp_tmp2; diff --git a/src/or/dirserv.c b/src/or/dirserv.c index 7af40e9cb6..b311bc6c16 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -1890,17 +1890,17 @@ connection_dirserv_add_networkstatus_bytes_to_outbuf(connection_t *conn) int uncompressing = (conn->zlib_state != NULL); int r = connection_dirserv_add_dir_bytes_to_outbuf(conn); if (conn->dir_spool_src == DIR_SPOOL_NONE) { - /* add_dir_bytes thinks we're done with the cached_dir. But we - * may have more cached_dirs! */ - conn->dir_spool_src = DIR_SPOOL_NETWORKSTATUS; - /* This bit is tricky. If we were uncompressing the last - * networkstatus, we may need to make a new zlib object to - * uncompress the next one. */ - if (uncompressing && ! conn->zlib_state && - conn->fingerprint_stack && - smartlist_len(conn->fingerprint_stack)) { - conn->zlib_state = tor_zlib_new(0, ZLIB_METHOD); - } + /* add_dir_bytes thinks we're done with the cached_dir. But we + * may have more cached_dirs! */ + conn->dir_spool_src = DIR_SPOOL_NETWORKSTATUS; + /* This bit is tricky. If we were uncompressing the last + * networkstatus, we may need to make a new zlib object to + * uncompress the next one. */ + if (uncompressing && ! conn->zlib_state && + conn->fingerprint_stack && + smartlist_len(conn->fingerprint_stack)) { + conn->zlib_state = tor_zlib_new(0, ZLIB_METHOD); + } } if (r) return r; } else if (conn->fingerprint_stack && diff --git a/src/or/routerlist.c b/src/or/routerlist.c index 3fbed21742..0098580543 100644 --- a/src/or/routerlist.c +++ b/src/or/routerlist.c @@ -208,7 +208,6 @@ _compare_routers_by_age(const void **_a, const void **_b) return r1->cache_info.published_on - r2->cache_info.published_on; } - /** If the journal is too long, or if force is true, then atomically * replace the router store with the routers currently in our routerlist, and * clear the journal. Return 0 on success, -1 on failure. diff --git a/src/or/routerparse.c b/src/or/routerparse.c index 7214055e01..b1dd2e30dc 100644 --- a/src/or/routerparse.c +++ b/src/or/routerparse.c @@ -682,7 +682,6 @@ router_parse_list_from_string(const char **s, smartlist_t *dest, router = router_parse_entry_from_string(*s, end, saved_location != SAVED_IN_CACHE); - if (!router) { log_warn(LD_DIR, "Error reading router; skipping"); *s = end;