diff --git a/source/libs/transport/src/transCli.c b/source/libs/transport/src/transCli.c index 931f58097e178d0ba65bb18e0d29d0b58b91f8f4..3696e86d22c8f34ed03ac0a6919b59368d08c9de 100644 --- a/source/libs/transport/src/transCli.c +++ b/source/libs/transport/src/transCli.c @@ -525,6 +525,7 @@ static void cliHandleRelease(SCliMsg* pMsg, SCliThrdObj* pThrd) { transDestroyBuffer(&conn->readBuf); if (conn->persist && T_REF_VAL_GET(conn) >= 2) { + conn->persist = false; transUnrefCliHandle(conn); addConnToPool(pThrd->pool, conn); } else { @@ -746,8 +747,7 @@ void transReleaseCliHandle(void* handle) { } STransMsg tmsg = {.handle = handle}; - - SCliMsg* cmsg = calloc(1, sizeof(SCliMsg)); + SCliMsg* cmsg = calloc(1, sizeof(SCliMsg)); cmsg->type = Release; cmsg->msg = tmsg;