diff options
| author | Richard Nyberg <rnyberg@murmeldjur.se> | 2006-07-28 13:50:11 +0000 |
|---|---|---|
| committer | Richard Nyberg <rnyberg@murmeldjur.se> | 2006-07-28 13:50:11 +0000 |
| commit | 7ce1098dffbbe0e4314d20e525120623c0a13e5d (patch) | |
| tree | 4bda0e8e61f07c38d4fd7197753aec07b765c955 | |
| parent | 45ceb46c42851a099205e4bcf3ae904c5ff8c221 (diff) | |
| download | btpd-7ce1098dffbbe0e4314d20e525120623c0a13e5d.tar.gz btpd-7ce1098dffbbe0e4314d20e525120623c0a13e5d.zip | |
Remove the events for a peer's socket before closing it. At least the epoll
libevent backend didn't like the fd to be closed. Reported by Ludvig Omholt.
| -rw-r--r-- | btpd/peer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/btpd/peer.c b/btpd/peer.c index dce170f..7ce486d 100644 --- a/btpd/peer.c +++ b/btpd/peer.c @@ -30,9 +30,9 @@ peer_kill(struct peer *p) if (p->flags & PF_ON_WRITEQ) BTPDQ_REMOVE(&net_bw_writeq, p, wq_entry); - close(p->sd); btpd_ev_del(&p->in_ev); btpd_ev_del(&p->out_ev); + close(p->sd); nl = BTPDQ_FIRST(&p->outq); while (nl != NULL) { |