From 8e4690455d0695fb247401d8d9ad8268e07d9f6a Mon Sep 17 00:00:00 2001 From: wangmm0220 Date: Wed, 8 Jun 2022 14:06:42 +0800 Subject: [PATCH] fix:return false in is ture operator if result is null --- source/common/src/tdatablock.c | 2 ++ source/libs/scalar/src/sclvector.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/source/common/src/tdatablock.c b/source/common/src/tdatablock.c index d9293433ea..23b9bd0f97 100644 --- a/source/common/src/tdatablock.c +++ b/source/common/src/tdatablock.c @@ -1130,6 +1130,7 @@ int32_t colInfoDataEnsureCapacity(SColumnInfoData* pColumn, size_t existRows, ui if (IS_VAR_DATA_TYPE(pColumn->info.type)) { char* tmp = taosMemoryRealloc(pColumn->varmeta.offset, sizeof(int32_t) * numOfRows); + if (tmp == NULL) { return TSDB_CODE_OUT_OF_MEMORY; } @@ -1155,6 +1156,7 @@ int32_t colInfoDataEnsureCapacity(SColumnInfoData* pColumn, size_t existRows, ui if (tmp == NULL) { return TSDB_CODE_OUT_OF_MEMORY; } + memset(tmp + pColumn->info.bytes * existRows, 0, pColumn->info.bytes * (numOfRows - existRows)); pColumn->pData = tmp; } diff --git a/source/libs/scalar/src/sclvector.c b/source/libs/scalar/src/sclvector.c index 59208de3c4..7440a6ae5b 100644 --- a/source/libs/scalar/src/sclvector.c +++ b/source/libs/scalar/src/sclvector.c @@ -633,7 +633,8 @@ int32_t vectorConvertImpl(const SScalarParam* pIn, SScalarParam* pOut) { if (IS_VAR_DATA_TYPE(inType)) { return vectorConvertFromVarData(pIn, pOut, inType, outType); } - + + pOut->numOfRows = pIn->numOfRows; switch (outType) { case TSDB_DATA_TYPE_BOOL: { for (int32_t i = 0; i < pIn->numOfRows; ++i) {