commit bae50b5: [Minor] Fix another close/ev_modify race
Vsevolod Stakhov
vsevolod at highsecure.ru
Mon Mar 30 11:21:10 UTC 2020
Author: Vsevolod Stakhov
Date: 2020-03-30 12:18:58 +0100
URL: https://github.com/rspamd/rspamd/commit/bae50b5b9c55336f4ca8620d5ef72745ec0d593f (HEAD -> master)
[Minor] Fix another close/ev_modify race
---
src/libserver/http/http_context.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/libserver/http/http_context.c b/src/libserver/http/http_context.c
index 519e4fb04..2863c0fbc 100644
--- a/src/libserver/http/http_context.c
+++ b/src/libserver/http/http_context.c
@@ -492,8 +492,9 @@ rspamd_http_keepalive_handler (gint fd, short what, gpointer ud)
rspamd_inet_address_to_string_pretty (cbdata->conn->keepalive_hash_key->addr),
cbdata->conn->keepalive_hash_key->host,
cbdata->queue->length);
- rspamd_http_connection_unref (cbdata->conn);
+ /* unref call closes fd, so we need to remove ev watcher first! */
rspamd_ev_watcher_stop (cbdata->ctx->event_loop, &cbdata->ev);
+ rspamd_http_connection_unref (cbdata->conn);
g_free (cbdata);
}
More information about the Commits
mailing list