From cfc7c9cf2403f9975421c634d09ed2dd1e04661d Mon Sep 17 00:00:00 2001 From: nicm Date: Thu, 10 Jun 2021 07:51:43 +0000 Subject: [PATCH] Fire check callback after cleaning up event so it does not get stuck, from Jeongho Jang in GitHub issue 2695. --- file.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/file.c b/file.c index 8f497b38..e527f121 100644 --- a/file.c +++ b/file.c @@ -506,14 +506,14 @@ file_write_error_callback(__unused struct bufferevent *bev, __unused short what, log_debug("write error file %d", cf->stream); - if (cf->cb != NULL) - cf->cb(NULL, NULL, 0, -1, NULL, cf->data); - bufferevent_free(cf->event); cf->event = NULL; close(cf->fd); cf->fd = -1; + + if (cf->cb != NULL) + cf->cb(NULL, NULL, 0, -1, NULL, cf->data); } /* Client file write callback. */