aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lua/lua_tcp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lua/lua_tcp.c b/src/lua/lua_tcp.c
index 93050eb2d..a6ebb2dc2 100644
--- a/src/lua/lua_tcp.c
+++ b/src/lua/lua_tcp.c
@@ -65,6 +65,7 @@ struct lua_tcp_cbdata {
struct iovec *iov;
GString *in;
gchar *stop_pattern;
+ struct rspamd_async_watcher *w;
struct event ev;
gint fd;
gint cbref;
@@ -113,6 +114,7 @@ lua_tcp_maybe_free (struct lua_tcp_cbdata *cbd)
{
if (cbd->session) {
rspamd_session_remove_event (cbd->session, lua_tcp_fin, cbd);
+ rspamd_session_watcher_pop (cbd->session, cbd->w);
}
else {
lua_tcp_fin (cbd);
@@ -609,6 +611,8 @@ lua_tcp_request (lua_State *L)
(event_finalizer_t)lua_tcp_fin,
cbd,
g_quark_from_static_string ("lua tcp"));
+ cbd->w = rspamd_session_get_watcher (session);
+ rspamd_session_watcher_push (session);
}
if (rspamd_parse_inet_address (&cbd->addr, host, 0)) {