diff options
author | Roger Dingledine <arma@torproject.org> | 2004-12-24 09:43:57 +0000 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2004-12-24 09:43:57 +0000 |
commit | 3a572fcffa4609a76e0d21c1e73f578287e7afc8 (patch) | |
tree | 218a13e46455b8a9b610c53c85d55fdfc7f7374b | |
parent | ebdfaaf4770351b0f2cdef862e0e9907fc84e838 (diff) | |
download | tor-3a572fcffa4609a76e0d21c1e73f578287e7afc8.tar.gz tor-3a572fcffa4609a76e0d21c1e73f578287e7afc8.zip |
don't connection_edge_end() on eof if we're already marked for close,
because if we are then it's because we already got an end.
svn:r3223
-rw-r--r-- | src/or/connection_edge.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c index 4a5552da69..0c7acca3ab 100644 --- a/src/or/connection_edge.c +++ b/src/or/connection_edge.c @@ -40,10 +40,10 @@ int connection_edge_reached_eof(connection_t *conn) { return 0; } log_fn(LOG_INFO,"conn (fd %d) reached eof (stream size %d). Closing.", conn->s, (int)conn->stream_size); - connection_edge_end(conn, END_STREAM_REASON_DONE, conn->cpath_layer); if (!conn->marked_for_close) { /* only mark it if not already marked. it's possible to * get the 'end' right around when the client hangs up on us. */ + connection_edge_end(conn, END_STREAM_REASON_DONE, conn->cpath_layer); connection_mark_for_close(conn); conn->hold_open_until_flushed = 1; /* just because we shouldn't read doesn't mean we shouldn't write */ |