From e4799c633ae26bcf518704cccff5aa623b47e5ab Mon Sep 17 00:00:00 2001 From: Sergey Dryabzhinsky Date: Tue, 26 Jul 2016 23:24:32 +0300 Subject: [PATCH] Hack for circular chain by @heftig - fix infinite loop on session close --- ngx_rtmp_shared.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ngx_rtmp_shared.c b/ngx_rtmp_shared.c index 6f6e4e8..3bdc5be 100644 --- a/ngx_rtmp_shared.c +++ b/ngx_rtmp_shared.c @@ -66,7 +66,8 @@ ngx_rtmp_free_shared_chain(ngx_rtmp_core_srv_conf_t *cscf, ngx_chain_t *in) } for (cl = in; ; cl = cl->next) { - if (cl->next == NULL) { + /* FIXME: Don't create circular chains in the first place */ + if (cl->next == NULL || cl->next == in) { cl->next = cscf->free; cscf->free = in; return;