summaryrefslogtreecommitdiff
path: root/evport.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2011-05-27 14:22:50 -0400
committerNick Mathewson <nickm@torproject.org>2011-05-27 15:10:45 -0400
commit276ec0ef42fbef76ca59ea5080503fba07ea8056 (patch)
treeaebc8460a81607f7c37d02789817f6f90f7e719b /evport.c
parent0f77efef8be1591e64f23c9652d3113fface1f6b (diff)
downloadlibevent-276ec0ef42fbef76ca59ea5080503fba07ea8056.tar.gz
evport: Use portev_user to remember fdinfo struct
Diffstat (limited to 'evport.c')
-rw-r--r--evport.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/evport.c b/evport.c
index 8b1c5f3e..8ff39378 100644
--- a/evport.c
+++ b/evport.c
@@ -177,7 +177,6 @@ check_event(port_event_t* pevt)
* PORT_SOURCE_FD.
*/
EVUTIL_ASSERT(pevt->portev_source == PORT_SOURCE_FD);
- EVUTIL_ASSERT(pevt->portev_user == NULL);
}
#else
@@ -196,7 +195,7 @@ reassociate(struct evport_data *epdp, struct fd_info *fdip, int fd)
if (sysevents != 0) {
if (port_associate(epdp->ed_port, PORT_SOURCE_FD,
- fd, sysevents, NULL) == -1) {
+ fd, sysevents, fdip) == -1) {
event_warn("port_associate");
return (-1);
}
@@ -283,7 +282,8 @@ evport_dispatch(struct event_base *base, struct timeval *tv)
for (i = 0; i < nevents; ++i) {
port_event_t *pevt = &pevtlist[i];
int fd = (int) pevt->portev_object;
- struct fd_info *fdi = evmap_io_get_fdinfo(&base->io, fd);
+ struct fd_info *fdi = pevt->portev_user;
+ //EVUTIL_ASSERT(evmap_io_get_fdinfo(&base->io, fd) == fdi);
check_evportop(epdp);
check_event(pevt);