summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2005-03-27 07:18:30 +0000
committerRoger Dingledine <arma@torproject.org>2005-03-27 07:18:30 +0000
commitb8fe866a9d80a56f4513fced0eeed3abed9613fb (patch)
tree33d8a0f849e00e26ee5c8dacd264adb5c7d7449b
parent92acd64da024cd2752384c818fe1adbe35677ebb (diff)
downloadtor-b8fe866a9d80a56f4513fced0eeed3abed9613fb.tar.gz
tor-b8fe866a9d80a56f4513fced0eeed3abed9613fb.zip
forward-port the fixing of the crash bug.
svn:r3900
-rw-r--r--src/or/circuitbuild.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index f49262384e..e60a7eef9a 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -350,11 +350,11 @@ void circuit_n_conn_done(connection_t *or_conn, int status) {
for (circ=global_circuitlist;circ;circ = circ->next) {
if (circ->marked_for_close)
continue;
- if (!circ->n_conn &&
+ if (circ->state == CIRCUIT_STATE_OR_WAIT &&
+ !circ->n_conn &&
circ->n_addr == or_conn->addr &&
circ->n_port == or_conn->port &&
!memcmp(or_conn->identity_digest, circ->n_conn_id_digest, DIGEST_LEN)) {
- tor_assert(circ->state == CIRCUIT_STATE_OR_WAIT);
if (!status) { /* or_conn failed; close circ */
log_fn(LOG_INFO,"or_conn failed. Closing circ.");
circuit_mark_for_close(circ);