From 1e156c9ce13998d87ca7d15fbb4dbbc624ff2732 Mon Sep 17 00:00:00 2001 From: wangmm0220 Date: Wed, 10 Jul 2024 18:58:06 +0800 Subject: [PATCH] fix:cleanup scheduler timer & remove destroy global variables to avoid heap use after free --- source/client/src/clientMain.c | 2 -- source/libs/scheduler/src/scheduler.c | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/source/client/src/clientMain.c b/source/client/src/clientMain.c index 61b7afc6b1..f65edc103a 100644 --- a/source/client/src/clientMain.c +++ b/source/client/src/clientMain.c @@ -84,8 +84,6 @@ void taos_cleanup(void) { taosConvDestroy(); tmqMgmtClose(); - taosHashCleanup(appInfo.pInstMap); - taosHashCleanup(appInfo.pInstMapByClusterId); tscInfo("all local resources released"); taosCleanupCfg(); diff --git a/source/libs/scheduler/src/scheduler.c b/source/libs/scheduler/src/scheduler.c index 795c21c234..fc92be8214 100644 --- a/source/libs/scheduler/src/scheduler.c +++ b/source/libs/scheduler/src/scheduler.c @@ -201,6 +201,7 @@ void schedulerDestroy(void) { } SCH_UNLOCK(SCH_WRITE, &schMgmt.hbLock); + taosTmrCleanUp(schMgmt.timer); qWorkerDestroy(&schMgmt.queryMgmt); schMgmt.queryMgmt = NULL; }