aboutsummaryrefslogtreecommitdiff
path: root/server-fn.c
diff options
context:
space:
mode:
authorTiago Cunha <tcunha@gmx.com>2012-03-18 01:59:34 +0000
committerTiago Cunha <tcunha@gmx.com>2012-03-18 01:59:34 +0000
commit0987d552315b5781157846c23eee0ddaab4702d7 (patch)
treeae795f2be215e431d562f6985f1430c9022eaba7 /server-fn.c
parent5aa28473dd76c6c10c5e2e9d303250c8f8881e05 (diff)
downloadrtmux-0987d552315b5781157846c23eee0ddaab4702d7.tar.gz
rtmux-0987d552315b5781157846c23eee0ddaab4702d7.tar.bz2
rtmux-0987d552315b5781157846c23eee0ddaab4702d7.zip
Sync OpenBSD patchset 1057:
Check event_initialized before event_del if event may not have been set up; libevent2 complains about this. Reported by Moriyoshi Koizumi.
Diffstat (limited to 'server-fn.c')
-rw-r--r--server-fn.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/server-fn.c b/server-fn.c
index 1de34fd1..121077ec 100644
--- a/server-fn.c
+++ b/server-fn.c
@@ -453,7 +453,8 @@ server_set_identify(struct client *c)
tv.tv_sec = delay / 1000;
tv.tv_usec = (delay % 1000) * 1000L;
- evtimer_del(&c->identify_timer);
+ if (event_initialized (&c->identify_timer))
+ evtimer_del(&c->identify_timer);
evtimer_set(&c->identify_timer, server_callback_identify, c);
evtimer_add(&c->identify_timer, &tv);
@@ -491,7 +492,8 @@ server_update_event(struct client *c)
events |= EV_READ;
if (c->ibuf.w.queued > 0)
events |= EV_WRITE;
- event_del(&c->event);
+ if (event_initialized(&c->event))
+ event_del(&c->event);
event_set(&c->event, c->ibuf.fd, events, server_client_callback, c);
event_add(&c->event, NULL);
}