diff --git a/src/rpc/src/rpcMain.c b/src/rpc/src/rpcMain.c index 96066b8b9d99aa5c6b76fcb0385e8f2918981814..d14a98ab3086fb24f2e080318f3be6f3b8d17c77 100644 --- a/src/rpc/src/rpcMain.c +++ b/src/rpc/src/rpcMain.c @@ -602,10 +602,10 @@ static void rpcReleaseConn(SRpcConn *pConn) { taosHashRemove(pRpc->hash, hashstr, size); rpcFreeMsg(pConn->pRspMsg); // it may have a response msg saved, but not request msg pConn->pRspMsg = NULL; + if (pConn->pReqMsg) rpcFreeCont(pConn->pReqMsg); } // memset could not be used, since lockeBy can not be reset - if (pConn->pReqMsg) rpcFreeCont(pConn->pReqMsg); pConn->inType = 0; pConn->outType = 0; pConn->inTranId = 0;