diff --git a/src/client/src/tscParseInsert.c b/src/client/src/tscParseInsert.c index ba5520a7c472f1b2e059c7e629df6ec72b519ca7..4a0e96e7b8609e1b86d18a3e5b33bf5c8188947b 100644 --- a/src/client/src/tscParseInsert.c +++ b/src/client/src/tscParseInsert.c @@ -672,7 +672,7 @@ int32_t tsParseValues(char **str, STableDataBlocks *pDataBlock, int maxRows, SIn } if (isConverted) { void *convertedSMemRow = pDataBlock->pData + pDataBlock->size; - memcpy(convertedSMemRow - extendedRowSize, convertedSMemRow, memRowTLen(convertedSMemRow)); + memcpy(POINTER_SHIFT(convertedSMemRow, -extendedRowSize), convertedSMemRow, (size_t)memRowTLen(convertedSMemRow)); } if ((*numOfRows) <= 0) { @@ -1775,7 +1775,7 @@ static void parseFileSendDataBlock(void *param, TAOS_RES *tres, int32_t numOfRow } if (isConverted) { void *convertedSMemRow = pTableDataBlock->pData + pTableDataBlock->size; - memcpy(convertedSMemRow - extendedRowSize, convertedSMemRow, memRowTLen(convertedSMemRow)); + memcpy(POINTER_SHIFT(convertedSMemRow, -extendedRowSize), convertedSMemRow, (size_t)memRowTLen(convertedSMemRow)); } tfree(tokenBuf);