Browse Source

fix an assert trigger where an OP would fail to handshake, and we'd
expect it to have a nickname.


svn:r1351

Roger Dingledine 20 years ago
parent
commit
9ab5f3c067
1 changed files with 5 additions and 1 deletions
  1. 5 1
      src/or/connection.c

+ 5 - 1
src/or/connection.c

@@ -187,7 +187,11 @@ _connection_mark_for_close(connection_t *conn, char reason)
     case CONN_TYPE_OR:
       /* Remember why we're closing this connection. */
       if (conn->state != OR_CONN_STATE_OPEN) {
-        rep_hist_note_connect_failed(conn->nickname, time(NULL));
+        /* XXX Nick: this still isn't right, because it might be
+         * dying even though we didn't initiate the connect. Can
+         * you look at this more? -RD */
+        if(conn->nickname)
+          rep_hist_note_connect_failed(conn->nickname, time(NULL));
       } else if (reason == CLOSE_REASON_UNUSED_OR_CONN) {
         rep_hist_note_disconnect(conn->nickname, time(NULL));
       } else {