fix(stmt/settag): return error if var tag's length is null

This commit is contained in:
Minglei Jin 2024-09-18 15:07:46 +08:00
parent 4c459155f1
commit 94d76ffcd2
1 changed files with 4 additions and 0 deletions

View File

@ -155,6 +155,10 @@ int32_t qBindStmtTagsValue(void* pBlock, void* boundTags, int64_t suid, const ch
SSchema* pTagSchema = &pSchema[tags->pColIndex[c]];
int32_t colLen = pTagSchema->bytes;
if (IS_VAR_DATA_TYPE(pTagSchema->type)) {
if (!bind[c].length) {
code = buildInvalidOperationMsg(&pBuf, "var tag length is null");
goto end;
}
colLen = bind[c].length[0];
if ((colLen + VARSTR_HEADER_SIZE) > pTagSchema->bytes) {
code = buildInvalidOperationMsg(&pBuf, "tag length is too big");