remove meaningless checks for chunks==NULL in dirserv stuff

Also, make it clearer that chunks cannot be NULL

[CID 1031750, 1031751]
This commit is contained in:
Nick Mathewson 2014-08-21 11:01:44 -04:00
parent 917e1042f7
commit 059e33de59
2 changed files with 7 additions and 12 deletions

View file

@ -1959,13 +1959,12 @@ routerstatus_format_entry(const routerstatus_t *rs, const char *version,
char published[ISO_TIME_LEN+1]; char published[ISO_TIME_LEN+1];
char identity64[BASE64_DIGEST_LEN+1]; char identity64[BASE64_DIGEST_LEN+1];
char digest64[BASE64_DIGEST_LEN+1]; char digest64[BASE64_DIGEST_LEN+1];
smartlist_t *chunks = NULL; smartlist_t *chunks = smartlist_new();
format_iso_time(published, rs->published_on); format_iso_time(published, rs->published_on);
digest_to_base64(identity64, rs->identity_digest); digest_to_base64(identity64, rs->identity_digest);
digest_to_base64(digest64, rs->descriptor_digest); digest_to_base64(digest64, rs->descriptor_digest);
chunks = smartlist_new();
smartlist_add_asprintf(chunks, smartlist_add_asprintf(chunks,
"r %s %s %s%s%s %s %d %d\n", "r %s %s %s%s%s %s %d %d\n",
rs->nickname, rs->nickname,
@ -2090,10 +2089,8 @@ routerstatus_format_entry(const routerstatus_t *rs, const char *version,
result = smartlist_join_strings(chunks, "", 0, NULL); result = smartlist_join_strings(chunks, "", 0, NULL);
err: err:
if (chunks) { SMARTLIST_FOREACH(chunks, char *, cp, tor_free(cp));
SMARTLIST_FOREACH(chunks, char *, cp, tor_free(cp)); smartlist_free(chunks);
smartlist_free(chunks);
}
return result; return result;
} }

View file

@ -64,7 +64,7 @@ STATIC char *
format_networkstatus_vote(crypto_pk_t *private_signing_key, format_networkstatus_vote(crypto_pk_t *private_signing_key,
networkstatus_t *v3_ns) networkstatus_t *v3_ns)
{ {
smartlist_t *chunks; smartlist_t *chunks = smartlist_new();
const char *client_versions = NULL, *server_versions = NULL; const char *client_versions = NULL, *server_versions = NULL;
char fingerprint[FINGERPRINT_LEN+1]; char fingerprint[FINGERPRINT_LEN+1];
char digest[DIGEST_LEN]; char digest[DIGEST_LEN];
@ -98,7 +98,6 @@ format_networkstatus_vote(crypto_pk_t *private_signing_key,
server_versions_line = tor_strdup(""); server_versions_line = tor_strdup("");
} }
chunks = smartlist_new();
{ {
char published[ISO_TIME_LEN+1]; char published[ISO_TIME_LEN+1];
char va[ISO_TIME_LEN+1]; char va[ISO_TIME_LEN+1];
@ -230,10 +229,9 @@ format_networkstatus_vote(crypto_pk_t *private_signing_key,
done: done:
tor_free(client_versions_line); tor_free(client_versions_line);
tor_free(server_versions_line); tor_free(server_versions_line);
if (chunks) {
SMARTLIST_FOREACH(chunks, char *, cp, tor_free(cp)); SMARTLIST_FOREACH(chunks, char *, cp, tor_free(cp));
smartlist_free(chunks); smartlist_free(chunks);
}
return status; return status;
} }