]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Add explicit check for !first_conn in ...resume_edge_reading_helper
authorNick Mathewson <nickm@torproject.org>
Thu, 27 Dec 2012 21:38:33 +0000 (16:38 -0500)
committerNick Mathewson <nickm@torproject.org>
Fri, 8 Feb 2013 21:32:58 +0000 (16:32 -0500)
This check isn't necessary (see comment on #7801), but it took at
least two smart people a little while to see why it wasn't necessary,
so let's have it in to make the code more readable.

src/or/relay.c

index 3da426e6bb4ee50481f3ce7a1dadfd20a34febb6..12283fcbbb9a514fbc33f8cb5ecde79169212e1f 100644 (file)
@@ -1764,11 +1764,18 @@ circuit_resume_edge_reading_helper(edge_connection_t *first_conn,
   int cells_on_queue;
   int cells_per_conn;
   edge_connection_t *chosen_stream = NULL;
+  int max_to_package;
+
+  if (first_conn == NULL) {
+    /* Don't bother to try to do the rest of this if there are no connections
+     * to resume. */
+    return 0;
+  }
 
   /* How many cells do we have space for?  It will be the minimum of
    * the number needed to exhaust the package window, and the minimum
    * needed to fill the cell queue. */
-  int max_to_package = circ->package_window;
+  max_to_package = circ->package_window;
   if (CIRCUIT_IS_ORIGIN(circ)) {
     cells_on_queue = circ->n_chan_cells.n;
   } else {