diff options
author | Nick Mathewson <nickm@torproject.org> | 2016-09-22 15:17:00 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2016-09-22 15:17:00 -0400 |
commit | 6e96eababe8f05ac03b2e83911e6fae5654884b4 (patch) | |
tree | 7f3c4aefeaaa56ae84cc91b22c64445282fe8f73 /src/or/relay.c | |
parent | 1edea87c2ac66d9d9ba5c92e6b2e4baddb6bd886 (diff) | |
parent | e4aaf7666028c30866ad63053ad9f6eb6bf16bf7 (diff) | |
download | tor-6e96eababe8f05ac03b2e83911e6fae5654884b4.tar.gz tor-6e96eababe8f05ac03b2e83911e6fae5654884b4.zip |
Merge branch 'bug20203_027_squashed' into maint-0.2.8
Diffstat (limited to 'src/or/relay.c')
-rw-r--r-- | src/or/relay.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/or/relay.c b/src/or/relay.c index fb8c8e74d6..3f7751826c 100644 --- a/src/or/relay.c +++ b/src/or/relay.c @@ -2615,6 +2615,15 @@ channel_flush_from_first_active_circuit, (channel_t *chan, int max)) } /* Circuitmux told us this was active, so it should have cells */ + if (/*BUG(*/ queue->n == 0 /*)*/) { + log_warn(LD_BUG, "Found a supposedly active circuit with no cells " + "to send. Trying to recover."); + circuitmux_set_num_cells(cmux, circ, 0); + if (! circ->marked_for_close) + circuit_mark_for_close(circ, END_CIRC_REASON_INTERNAL); + continue; + } + tor_assert(queue->n > 0); /* |