diff --git a/source/libs/executor/src/tfill.c b/source/libs/executor/src/tfill.c index 98eb0d1d90..ff856a48b6 100644 --- a/source/libs/executor/src/tfill.c +++ b/source/libs/executor/src/tfill.c @@ -514,8 +514,15 @@ void* taosDestroyFillInfo(SFillInfo* pFillInfo) { if (pFillInfo == NULL) { return NULL; } - taosMemoryFree(pFillInfo->prev->pData); + for (int32_t i = 0; i < taosArrayGetSize(pFillInfo->prev); ++i) { + SGroupKeys* pKey = taosArrayGet(pFillInfo->prev, i); + taosMemoryFree(pKey->pData); + } taosArrayDestroy(pFillInfo->prev); + for (int32_t i = 0; i < taosArrayGetSize(pFillInfo->next); ++i) { + SGroupKeys* pKey = taosArrayGet(pFillInfo->next, i); + taosMemoryFree(pKey->pData); + } taosArrayDestroy(pFillInfo->next); for (int32_t i = 0; i < pFillInfo->numOfTags; ++i) {