Browse Source

Merge remote-tracking branch 'public/bug6341_a_v2' into maint-0.2.3

Nick Mathewson 11 years ago
parent
commit
1f5a7917f5
2 changed files with 6 additions and 1 deletions
  1. 5 0
      changes/bug6341
  2. 1 1
      src/or/relay.c

+ 5 - 0
changes/bug6341

@@ -0,0 +1,5 @@
+  o Major bugfixes:
+    - Fix a possible crash bug when checking for deactivated circuits
+      in connection_or_flush_from_first_active_circuit(). Fixes bug 
+      6341; bugfix on 0.2.2.7-alpha. Bug report and fix received
+      pseudonymously.

+ 1 - 1
src/or/relay.c

@@ -2478,7 +2478,7 @@ connection_or_flush_from_first_active_circuit(or_connection_t *conn, int max,
       tor_assert(tmp == cell_ewma);
       add_cell_ewma_to_conn(conn, cell_ewma);
     }
-    if (circ != conn->active_circuits) {
+    if (!ewma_enabled && circ != conn->active_circuits) {
       /* If this happens, the current circuit just got made inactive by
        * a call in connection_write_to_buf().  That's nothing to worry about:
        * circuit_make_inactive_on_conn() already advanced conn->active_circuits