aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2013-09-03 14:25:01 -0400
committerNick Mathewson <nickm@torproject.org>2013-09-03 14:25:01 -0400
commit264aa271a734767a13065bc6e0d15c4d8c602005 (patch)
tree695a1f5c92dbfaed9f4a3c5802c511b101cc9999 /src
parenta5610cfa64189db693dbad3efaa973d6720c42fe (diff)
downloadtor-264aa271a734767a13065bc6e0d15c4d8c602005.tar
tor-264aa271a734767a13065bc6e0d15c4d8c602005.tar.gz
Fix bug 9645: don't forget an md just because we can't save it.
Diffstat (limited to 'src')
-rw-r--r--src/or/microdesc.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/or/microdesc.c b/src/or/microdesc.c
index b93bd83af..8b5581f4a 100644
--- a/src/or/microdesc.c
+++ b/src/or/microdesc.c
@@ -213,7 +213,6 @@ microdescs_add_list_to_cache(microdesc_cache_t *cache,
if (fd < 0) {
log_warn(LD_DIR, "Couldn't append to journal in %s: %s",
cache->journal_fname, strerror(errno));
- return NULL;
}
}
@@ -238,11 +237,11 @@ microdescs_add_list_to_cache(microdesc_cache_t *cache,
if (size < 0) {
/* we already warned in dump_microdescriptor */
abort_writing_to_file(open_file);
- smartlist_clear(added);
- return added;
+ fd = -1;
+ } else {
+ md->saved_location = SAVED_IN_JOURNAL;
+ cache->journal_len += size;
}
- md->saved_location = SAVED_IN_JOURNAL;
- cache->journal_len += size;
} else {
md->saved_location = where;
}