BUG/MINOR: hlua: fix missing lock in hlua_filter_delete()

hlua_filter_delete() calls hlua_unref() on the stream hlua stack, but
we should own the lock prior to manipulating the stack.

This should be backported up to 2.6.
This commit is contained in:
Aurelien DARRAGON 2024-03-11 13:51:03 +01:00
parent ecd8f3bfd7
commit 85d81e4d0a

View File

@ -12037,7 +12037,9 @@ static void hlua_filter_delete(struct stream *s, struct filter *filter)
{
struct hlua_flt_ctx *flt_ctx = filter->ctx;
hlua_lock(s->hlua);
hlua_unref(s->hlua->T, flt_ctx->ref);
hlua_unlock(s->hlua);
hlua_ctx_destroy(flt_ctx->hlua[0]);
hlua_ctx_destroy(flt_ctx->hlua[1]);
pool_free(pool_head_hlua_flt_ctx, flt_ctx);