fix:[TD-31264] fix wrong result when using concat multi-byte character with nchar.
This commit is contained in:
parent
2d57e77df8
commit
c48d377582
|
@ -401,8 +401,8 @@ static int32_t concatCopyHelper(const char *input, char *output, bool hasNchar,
|
||||||
taosMemoryFree(newBuf);
|
taosMemoryFree(newBuf);
|
||||||
return TSDB_CODE_SCALAR_CONVERT_ERROR;
|
return TSDB_CODE_SCALAR_CONVERT_ERROR;
|
||||||
}
|
}
|
||||||
(void)memcpy(varDataVal(output) + *dataLen, newBuf, varDataLen(input) * TSDB_NCHAR_SIZE);
|
(void)memcpy(varDataVal(output) + *dataLen, newBuf, len);
|
||||||
*dataLen += varDataLen(input) * TSDB_NCHAR_SIZE;
|
*dataLen += len;
|
||||||
taosMemoryFree(newBuf);
|
taosMemoryFree(newBuf);
|
||||||
} else {
|
} else {
|
||||||
(void)memcpy(varDataVal(output) + *dataLen, varDataVal(input), varDataLen(input));
|
(void)memcpy(varDataVal(output) + *dataLen, varDataVal(input), varDataLen(input));
|
||||||
|
|
Loading…
Reference in New Issue