From 61ee18b8b1d2ac0025955b3f949531c712fb7527 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Kuzn=C3=ADk?= Date: Tue, 3 Dec 2013 22:49:57 +0000 Subject: Add an option to trigger bufferevent I/O callbacks --- bufferevent_sock.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'bufferevent_sock.c') diff --git a/bufferevent_sock.c b/bufferevent_sock.c index 5ce4953b..82983ed7 100644 --- a/bufferevent_sock.c +++ b/bufferevent_sock.c @@ -184,8 +184,7 @@ bufferevent_readcb(evutil_socket_t fd, short event, void *arg) bufferevent_decrement_read_buckets_(bufev_p, res); /* Invoke the user callback - must always be called last */ - if (evbuffer_get_length(input) >= bufev->wm_read.low) - bufferevent_run_readcb_(bufev); + bufferevent_trigger_nolock_(bufev, EV_READ, 0); goto done; @@ -294,9 +293,8 @@ bufferevent_writecb(evutil_socket_t fd, short event, void *arg) * Invoke the user callback if our buffer is drained or below the * low watermark. */ - if ((res || !connected) && - evbuffer_get_length(bufev->output) <= bufev->wm_write.low) { - bufferevent_run_writecb_(bufev); + if (res || !connected) { + bufferevent_trigger_nolock_(bufev, EV_WRITE, 0); } goto done; -- cgit v1.2.1