From cfe33625a07472189a5b17190ca348108c8911cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stig=20Bj=C3=B8rlykke?= Date: Tue, 19 Oct 2021 20:17:52 +0200 Subject: [PATCH] wslua: Initialize Proto members on creation Set all pointers in Proto to NULL and check for valid pointers when wslua_deregister_protocols(). Fixes #17668 --- epan/wslua/wslua_proto.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/epan/wslua/wslua_proto.c b/epan/wslua/wslua_proto.c index 1e9ee99784..af0881ceda 100644 --- a/epan/wslua/wslua_proto.c +++ b/epan/wslua/wslua_proto.c @@ -109,7 +109,7 @@ WSLUA_CONSTRUCTOR Proto_new(lua_State* L) { /* Creates a new <name = hiname; proto->loname = loname; @@ -652,7 +652,7 @@ int wslua_deregister_protocols(lua_State* L) { } lua_pop(L, 1); - if (proto->hfa->len) { + if (proto->hfa && proto->hfa->len) { proto_add_deregistered_data(g_array_free(proto->hfa,FALSE)); } else { g_array_free(proto->hfa,TRUE); @@ -661,7 +661,7 @@ int wslua_deregister_protocols(lua_State* L) { /* No need for deferred deletion of subtree indexes */ g_array_free(proto->etta,TRUE); - if (proto->eia->len) { + if (proto->eia && proto->eia->len) { proto_add_deregistered_data(g_array_free(proto->eia,FALSE)); } else { g_array_free(proto->eia,TRUE);