minor race condition

(it seemed to work anyway, but...)


svn:r100
This commit is contained in:
Roger Dingledine 2002-09-09 04:06:59 +00:00
parent f9f3e2f120
commit 1e4e0244dd
2 changed files with 4 additions and 4 deletions

View File

@ -635,8 +635,9 @@ int connection_consider_sending_sendme(connection_t *conn) {
circ = circuit_get_by_conn(conn); circ = circuit_get_by_conn(conn);
if(!circ) { if(!circ) {
log(LOG_DEBUG,"connection_consider_sending_sendme(): Bug: no circuit associated with conn. Closing."); /* this can legitimately happen if the destroy has already arrived and torn down the circuit */
return -1; log(LOG_DEBUG,"connection_consider_sending_sendme(): No circuit associated with conn. Skipping.");
return 0;
} }
sendme.command = CELL_SENDME; sendme.command = CELL_SENDME;
sendme.length = RECEIVE_WINDOW_INCREMENT; sendme.length = RECEIVE_WINDOW_INCREMENT;

View File

@ -365,8 +365,7 @@ int connection_ap_finished_flushing(connection_t *conn) {
case AP_CONN_STATE_OPEN: case AP_CONN_STATE_OPEN:
/* FIXME down the road, we'll clear out circuits that are pending to close */ /* FIXME down the road, we'll clear out circuits that are pending to close */
connection_stop_writing(conn); connection_stop_writing(conn);
connection_consider_sending_sendme(conn); return connection_consider_sending_sendme(conn);
return 0;
default: default:
log(LOG_DEBUG,"Bug: connection_ap_finished_flushing() called in unexpected state."); log(LOG_DEBUG,"Bug: connection_ap_finished_flushing() called in unexpected state.");
return 0; return 0;