From 55a28d69466e460c71ab6d1627cf540e98e912a9 Mon Sep 17 00:00:00 2001 From: "R. Christian McDonald" Date: Thu, 19 Jan 2023 16:30:47 -0500 Subject: [PATCH] cleanup callbacks that might have been registered by Python script --- pythonmod/pythonmod.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pythonmod/pythonmod.c b/pythonmod/pythonmod.c index 19b464633..aa8609c58 100644 --- a/pythonmod/pythonmod.c +++ b/pythonmod/pythonmod.c @@ -3,6 +3,7 @@ * * Copyright (c) 2009, Zdenek Vasicek (vasicek AT fit.vutbr.cz) * Marek Vavrusa (xvavru00 AT stud.fit.vutbr.cz) + * Copyright (c) 2022, Rubicon Communications, LLC (Netgate) * * This software is open source. * @@ -567,6 +568,10 @@ void pythonmod_deinit(struct module_env* env, int id) /* Module is deallocated in Python */ env->modinfo[id] = NULL; + + /* iterate over all possible callback types and clean up each in turn */ + for (int cbtype = 0; cbtype < inplace_cb_types_total; cbtype++) + inplace_cb_delete(env, cbtype, id); } void pythonmod_inform_super(struct module_qstate* qstate, int id, struct module_qstate* super) -- 2.47.3