Merge pull request #18441 from taosdata/fix/TD-20645
fix: [ASAN] fix nullpointer issue in tdatablock.c
This commit is contained in:
commit
0905f83cd6
|
@ -509,8 +509,12 @@ SSDataBlock* blockDataExtractBlock(SSDataBlock* pBlock, int32_t startIndex, int3
|
|||
isNull = colDataIsNull(pColData, pBlock->info.rows, j, pBlock->pBlockAgg[i]);
|
||||
}
|
||||
|
||||
char* p = colDataGetData(pColData, j);
|
||||
colDataAppend(pDstCol, j - startIndex, p, isNull);
|
||||
if (isNull) {
|
||||
colDataAppendNULL(pDstCol, j - startIndex);
|
||||
} else {
|
||||
char* p = colDataGetData(pColData, j);
|
||||
colDataAppend(pDstCol, j - startIndex, p, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -807,7 +811,9 @@ static int32_t blockDataAssign(SColumnInfoData* pCols, const SSDataBlock* pDataB
|
|||
SColumnInfoData* pSrc = taosArrayGet(pDataBlock->pDataBlock, i);
|
||||
|
||||
if (IS_VAR_DATA_TYPE(pSrc->info.type)) {
|
||||
memcpy(pDst->pData, pSrc->pData, pSrc->varmeta.length);
|
||||
if (pSrc->varmeta.length != 0) {
|
||||
memcpy(pDst->pData, pSrc->pData, pSrc->varmeta.length);
|
||||
}
|
||||
pDst->varmeta.length = pSrc->varmeta.length;
|
||||
|
||||
for (int32_t j = 0; j < pDataBlock->info.rows; ++j) {
|
||||
|
|
|
@ -59,4 +59,4 @@ else
|
|||
fi
|
||||
cat ${LOG_DIR}/*.asan
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue