diff options
author | Patrik Nyblom <pan@erlang.org> | 2011-03-21 14:55:19 +0100 |
---|---|---|
committer | Patrik Nyblom <pan@erlang.org> | 2011-03-21 15:02:10 +0100 |
commit | d46319ff2472610a34450f0a0fe62fd0c9c29f41 (patch) | |
tree | 8b00776ac07e2eac9f8394ec3a9205321470b882 | |
parent | f861b4fdb3fd39e35f2951c53a73b30a98c7f973 (diff) | |
download | otp-d46319ff2472610a34450f0a0fe62fd0c9c29f41.tar.gz otp-d46319ff2472610a34450f0a0fe62fd0c9c29f41.tar.bz2 otp-d46319ff2472610a34450f0a0fe62fd0c9c29f41.zip |
Teach tcp_recv not to cancel send timer
-rw-r--r-- | erts/emulator/drivers/common/inet_drv.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/erts/emulator/drivers/common/inet_drv.c b/erts/emulator/drivers/common/inet_drv.c index b491242aea..59f4cfb9b4 100644 --- a/erts/emulator/drivers/common/inet_drv.c +++ b/erts/emulator/drivers/common/inet_drv.c @@ -8550,7 +8550,9 @@ static int tcp_deliver(tcp_descriptor* desc, int len) len = 0; if (!desc->inet.active) { - driver_cancel_timer(desc->inet.port); + if (!desc->busy_on_send) { + driver_cancel_timer(desc->inet.port); + } sock_select(INETP(desc),(FD_READ|FD_CLOSE),0); if (desc->i_buf != NULL) tcp_restart_input(desc); |