diff --git a/src/client/src/tscSQLParser.c b/src/client/src/tscSQLParser.c index fff3c0cc0267812941c330b7d067d5f2ec3e2c31..bb103f23c6718c40ab9933c7ed84a73f3edb70fa 100644 --- a/src/client/src/tscSQLParser.c +++ b/src/client/src/tscSQLParser.c @@ -6101,7 +6101,7 @@ void tscPrintSelectClause(SSqlObj* pSql, int32_t subClauseIndex) { int32_t tmpLen = 0; tmpLen = sprintf(tmpBuf, "%s(uid:%" PRId64 ", %d)", aAggs[pExpr->functionId].aName, pExpr->uid, pExpr->colInfo.colId); - if (tmpLen + offset > totalBufSize) break; + if (tmpLen + offset >= totalBufSize - 1) break; offset += sprintf(str + offset, "%s", tmpBuf); @@ -6110,6 +6110,7 @@ void tscPrintSelectClause(SSqlObj* pSql, int32_t subClauseIndex) { } } + assert(offset < totalBufSize); str[offset] = ']'; tscDebug("%p select clause:%s", pSql, str); }