fix(query): check for null ptr.
This commit is contained in:
parent
cc6daa0855
commit
922b0681ea
|
@ -1246,11 +1246,17 @@ void destroyIntervalOperatorInfo(void* param) {
|
|||
if (param == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
SIntervalAggOperatorInfo* pInfo = (SIntervalAggOperatorInfo*)param;
|
||||
|
||||
cleanupBasicInfo(&pInfo->binfo);
|
||||
cleanupResultInfo(pInfo->pOperator->pTaskInfo, &pInfo->pOperator->exprSupp, pInfo->aggSup.pResultBuf,
|
||||
&pInfo->groupResInfo, pInfo->aggSup.pResultRowHashTable);
|
||||
pInfo->pOperator = NULL;
|
||||
|
||||
if (pInfo->pOperator) {
|
||||
cleanupResultInfo(pInfo->pOperator->pTaskInfo, &pInfo->pOperator->exprSupp, pInfo->aggSup.pResultBuf,
|
||||
&pInfo->groupResInfo, pInfo->aggSup.pResultRowHashTable);
|
||||
pInfo->pOperator = NULL;
|
||||
}
|
||||
|
||||
cleanupAggSup(&pInfo->aggSup);
|
||||
cleanupExprSupp(&pInfo->scalarSupp);
|
||||
|
||||
|
@ -1258,6 +1264,7 @@ void destroyIntervalOperatorInfo(void* param) {
|
|||
|
||||
taosArrayDestroy(pInfo->pInterpCols);
|
||||
pInfo->pInterpCols = NULL;
|
||||
|
||||
taosArrayDestroyEx(pInfo->pPrevValues, freeItem);
|
||||
pInfo->pPrevValues = NULL;
|
||||
|
||||
|
@ -1351,6 +1358,7 @@ int32_t createIntervalOperatorInfo(SOperatorInfo* downstream, SIntervalPhysiNode
|
|||
SOperatorInfo* pOperator = taosMemoryCalloc(1, sizeof(SOperatorInfo));
|
||||
if (pInfo == NULL || pOperator == NULL) {
|
||||
code = terrno;
|
||||
lino = __LINE__;
|
||||
goto _error;
|
||||
}
|
||||
|
||||
|
@ -1458,8 +1466,10 @@ _error:
|
|||
if (pInfo != NULL) {
|
||||
destroyIntervalOperatorInfo(pInfo);
|
||||
}
|
||||
|
||||
destroyOperatorAndDownstreams(pOperator, &downstream, 1);
|
||||
pTaskInfo->code = code;
|
||||
qError("error happens at %s %d, code:%s", __func__, lino, tstrerror(code));
|
||||
return code;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue