From 28855b81b1e3b96ec15967f05b9eda0cc8b625b1 Mon Sep 17 00:00:00 2001 From: Ganlin Zhao Date: Mon, 25 Apr 2022 17:16:47 +0800 Subject: [PATCH] fix(query): fix scalar function input is constant return var type value contains illegal characters. TD-15116 --- source/libs/scalar/src/scalar.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/source/libs/scalar/src/scalar.c b/source/libs/scalar/src/scalar.c index d6c0989f19..6773f8192b 100644 --- a/source/libs/scalar/src/scalar.c +++ b/source/libs/scalar/src/scalar.c @@ -517,10 +517,8 @@ EDealRes sclRewriteFunction(SNode** pNode, SScalarCtx *ctx) { res->node.resType = node->node.resType; int32_t type = output.columnData->info.type; if (IS_VAR_DATA_TYPE(type)) { - size_t tLen = varDataLen(output.columnData->pData); - ASSERT(tLen <= res->node.resType.bytes); res->datum.p = taosMemoryCalloc(res->node.resType.bytes + VARSTR_HEADER_SIZE + 1, 1); - memcpy(res->datum.p, output.columnData->pData, tLen); + memcpy(res->datum.p, output.columnData->pData, varDataTLen(output.columnData->pData)); } else { memcpy(nodesGetValueFromNode(res), output.columnData->pData, tDataTypes[type].bytes); }