From 84bd1f391c9921c5a0ca7623285099c9aa6e2557 Mon Sep 17 00:00:00 2001 From: Arran Cudbard-Bell Date: Wed, 8 Sep 2021 18:29:47 -0500 Subject: [PATCH] Fix logic bug in synchronous interpreter where it'd free yielded detached subrequests --- src/lib/unlang/interpret_synchronous.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/unlang/interpret_synchronous.c b/src/lib/unlang/interpret_synchronous.c index 0824157023..8cc6e7db3b 100644 --- a/src/lib/unlang/interpret_synchronous.c +++ b/src/lib/unlang/interpret_synchronous.c @@ -268,7 +268,10 @@ rlm_rcode_t unlang_interpret_synchronous(fr_event_list_t *el, request_t *request if (sub_request == request) { rcode = sub_rcode; - } else if (!sub_request->parent) { + /* + * Free detached, resumable requests + */ + } else if (!sub_request->parent && !unlang_interpret_is_resumable(sub_request)) { talloc_free(sub_request); /* Free detached requests */ } -- 2.47.2