diff --git a/source/libs/transport/src/transCli.c b/source/libs/transport/src/transCli.c index 1417960f11468d96bc944a13af56382df0ce2db2..17bc132ef3e10f19e63930ba8d26c350f5d0d55d 100644 --- a/source/libs/transport/src/transCli.c +++ b/source/libs/transport/src/transCli.c @@ -289,8 +289,12 @@ bool cliMaySendCachedMsg(SCliConn* conn) { if (!transQueueEmpty(&conn->cliMsgs)) { SCliMsg* pCliMsg = NULL; CONN_GET_NEXT_SENDMSG(conn); - cliSend(conn); - return true; + if (pCliMsg == NULL) + return false; + else { + cliSend(conn); + return true; + } } return false; _RETURN: @@ -707,6 +711,9 @@ static bool cliHandleNoResp(SCliConn* conn) { if (cliMaySendCachedMsg(conn) == false) { SCliThrd* thrd = conn->hostThrd; addConnToPool(thrd->pool, conn); + res = false; + } else { + res = true; } } }