소스 검색

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 년 전
부모
커밋
b2f82d45b7
1개의 변경된 파일6개의 추가작업 그리고 0개의 파일을 삭제
  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;