]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
don't double-detach a closing exit conn that's waiting for dns resolve
authorRoger Dingledine <arma@torproject.org>
Mon, 31 Jan 2005 01:27:49 +0000 (01:27 +0000)
committerRoger Dingledine <arma@torproject.org>
Mon, 31 Jan 2005 01:27:49 +0000 (01:27 +0000)
svn:r3477

src/or/connection.c

index 8e8505d1e9ae802848e8ab2958fabc36d9c24ff9..854989c46d3511631e65e290d5792e8a51b9af41 100644 (file)
@@ -215,6 +215,7 @@ void connection_free_all(void) {
  */
 void connection_about_to_close_connection(connection_t *conn)
 {
+  circuit_t *circ;
 
   assert(conn->marked_for_close);
 
@@ -271,7 +272,9 @@ void connection_about_to_close_connection(connection_t *conn)
       break;
     case CONN_TYPE_EXIT:
       if (conn->state == EXIT_CONN_STATE_RESOLVING) {
-        circuit_detach_stream(circuit_get_by_conn(conn), conn);
+        circ = circuit_get_by_conn(conn);
+        if (circ)
+          circuit_detach_stream(circ, conn);
         connection_dns_remove(conn);
       }
       break;