Memleak: free the list of search hooks on exit
[citadel.git] / citadel / serv_extensions.c
index a35fa1bcf3070bb5fc5ff35532bc744eb37193ce..e23772e9602c9f72086375e5e185b7ecec7b6de2 100644 (file)
@@ -893,6 +893,19 @@ void CtdlUnregisterSearchFuncHook(void (*fcn_ptr)(int *, long **, const char *),
        }
 }
 
+void CtdlDestroySearchHooks(void)
+{
+        struct SearchFunctionHook *cur, *p;
+
+       cur = SearchFunctionHookTable;
+       SearchFunctionHookTable = NULL;
+        while (cur != NULL) {
+               p = cur->next;
+               free(cur);
+               cur = p;
+       }
+}
+
 void CtdlModuleDoSearch(int *num_msgs, long **search_msgs, const char *search_string, const char *func_name)
 {
        struct SearchFunctionHook *fcn = NULL;