From 95d97c722a739735382af35e0341546655e2fc57 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Tue, 25 Sep 2007 23:57:12 +0000 Subject: [PATCH] r15371@catbus: nickm | 2007-09-25 19:53:13 -0400 Always set status_out when adding a vote. svn:r11646 --- src/or/dirvote.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/or/dirvote.c b/src/or/dirvote.c index 10bd273319..1710fb5a04 100644 --- a/src/or/dirvote.c +++ b/src/or/dirvote.c @@ -1418,6 +1418,12 @@ dirvote_add_vote(const char *vote_body, const char **msg_out, int *status_out) v->vote_body = new_cached_dir(tor_strdup(vote_body), vote->published); v->vote = vote; + if (end_of_vote && + !strcmpstart(end_of_vote, "network-status-version")) + goto again; + + if (!*status_out) + *status_out = 200; *msg_out = "ok"; return v; } else { @@ -1450,7 +1456,7 @@ dirvote_add_vote(const char *vote_body, const char **msg_out, int *status_out) networkstatus_vote_free(vote); if (!*msg_out) *msg_out = "Error adding vote"; - if (!*status_out) + if (!*status_out || *status_out == 200) *status_out = 400; if (end_of_vote && !strcmpstart(end_of_vote, "network-status-version "))