Kaynağa Gözat

Always call connection_ap_attach_pending() once a second.

Fixes bug 19969; bugfix on b1d56fc58.  We can fix this some more in
later Tors, but for now, this is probably the simplest fix possible.

This is a belt-and-suspenders fix, where the earlier fix ("Ask
event_base_loop to finish when we add a pending stream") aims to respond
to new streams as soon as they arrive, and this one aims to make sure
that we definitely respond to all of the streams.
Nick Mathewson 7 yıl önce
ebeveyn
işleme
b2f82d45b7
1 değiştirilmiş dosya ile 6 ekleme ve 0 silme
  1. 6 0
      src/or/main.c

+ 6 - 0
src/or/main.c

@@ -1525,6 +1525,12 @@ run_scheduled_events(time_t now)
     circuit_expire_old_circs_as_needed(now);
   }
 
+  if (!net_is_disabled()) {
+    /* This is usually redundant with circuit_build_needed_circs() above,
+     * but it is very fast when there is no work to do. */
+    connection_ap_attach_pending(0);
+  }
+
   /* 5. We do housekeeping for each connection... */
   connection_or_set_bad_connections(NULL, 0);
   int i;