version 1.45, 2002/03/25 21:13:51 |
version 1.45.2.1, 2002/06/26 15:30:38 |
|
|
else |
else |
chan_rcvd_ieof1(c); |
chan_rcvd_ieof1(c); |
if (c->ostate == CHAN_OUTPUT_WAIT_DRAIN && |
if (c->ostate == CHAN_OUTPUT_WAIT_DRAIN && |
buffer_len(&c->output) == 0 && |
buffer_len(&c->output) == 0 && |
!CHANNEL_EFD_OUTPUT_ACTIVE(c)) |
!CHANNEL_EFD_OUTPUT_ACTIVE(c)) |
chan_obuf_empty(c); |
chan_obuf_empty(c); |
} |
} |
|
|
c->extended_usage == CHAN_EXTENDED_WRITE && |
c->extended_usage == CHAN_EXTENDED_WRITE && |
c->efd != -1 && |
c->efd != -1 && |
buffer_len(&c->extended) > 0) { |
buffer_len(&c->extended) > 0) { |
debug2("channel %d: active efd: %d len %d", |
debug2("channel %d: active efd: %d len %d", |
c->self, c->efd, buffer_len(&c->extended)); |
c->self, c->efd, buffer_len(&c->extended)); |
return 0; |
return 0; |
} |
} |
if (!(c->flags & CHAN_CLOSE_SENT)) { |
if (!(c->flags & CHAN_CLOSE_SENT)) { |