From 15db074b701a066a297016bf2d4e12f2e66f1568 Mon Sep 17 00:00:00 2001 From: Andy Green Date: Mon, 21 Feb 2022 08:18:47 +0000 Subject: [PATCH] context_destroy: clean up early fail path --- lib/core/context.c | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/lib/core/context.c b/lib/core/context.c index fb684e511..af818ebe3 100644 --- a/lib/core/context.c +++ b/lib/core/context.c @@ -2009,15 +2009,18 @@ next: lws_plat_context_late_destroy(context); #if defined(LWS_WITH_PEER_LIMITS) - for (nu = 0; nu < context->pl_hash_elements; nu++) { - lws_start_foreach_llp(struct lws_peer **, peer, - context->pl_hash_table[nu]) { - struct lws_peer *df = *peer; - *peer = df->next; - lws_free(df); - continue; - } lws_end_foreach_llp(peer, next); - } + if (context->pl_hash_table) + for (nu = 0; nu < context->pl_hash_elements; nu++) { + if (!context->pl_hash_table[nu]) + continue; + lws_start_foreach_llp(struct lws_peer **, peer, + context->pl_hash_table[nu]) { + struct lws_peer *df = *peer; + *peer = df->next; + lws_free(df); + continue; + } lws_end_foreach_llp(peer, next); + } lws_free(context->pl_hash_table); #endif