summaryrefslogtreecommitdiff
path: root/src/or/connection_edge.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2016-11-03 15:44:46 -0400
committerNick Mathewson <nickm@torproject.org>2016-11-03 15:44:46 -0400
commit3cd520a52d50b9e901d33d0164d847d12a278f1b (patch)
tree7ba6f48f7245871f2572a4f209b23f0c284bf626 /src/or/connection_edge.c
parent3bb49c011006d042f8a3f802d7abb3e9da51b15b (diff)
parent7a45ef5a4706aab57abcf170c10080811223175e (diff)
downloadtor-3cd520a52d50b9e901d33d0164d847d12a278f1b.tar.gz
tor-3cd520a52d50b9e901d33d0164d847d12a278f1b.zip
Merge branch 'maint-0.2.8' into maint-0.2.9
Diffstat (limited to 'src/or/connection_edge.c')
-rw-r--r--src/or/connection_edge.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 24842e4107..7b9c315a11 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -937,6 +937,15 @@ connection_ap_mark_as_pending_circuit_(entry_connection_t *entry_conn,
untried_pending_connections = 1;
smartlist_add(pending_entry_connections, entry_conn);
+
+ /* Work-around for bug 19969: we handle pending_entry_connections at
+ * the end of run_main_loop_once(), but in many cases that function will
+ * take a very long time, if ever, to finish its call to event_base_loop().
+ *
+ * So the fix is to tell it right now that it ought to finish its loop at
+ * its next available opportunity.
+ */
+ tell_event_loop_to_finish();
}
/** Mark <b>entry_conn</b> as no longer waiting for a circuit. */