mirror of
https://github.com/joyieldInc/predixy.git
synced 2025-12-24 22:46:41 +08:00
Merge pull request #101 from joyieldInc/FixPrivateConnLeak
fix private connection leak
This commit is contained in:
commit
393ff81e69
@ -215,7 +215,6 @@ void Handler::postAcceptConnectionEvent()
|
|||||||
auto cp = mConnPool[s->server()->id()];
|
auto cp = mConnPool[s->server()->id()];
|
||||||
s->setStatus(Connection::LogicError);
|
s->setStatus(Connection::LogicError);
|
||||||
addPostEvent(s, Multiplexor::ErrorEvent);
|
addPostEvent(s, Multiplexor::ErrorEvent);
|
||||||
cp->putPrivateConnection(s);
|
|
||||||
c->detachConnectConnection();
|
c->detachConnectConnection();
|
||||||
s->detachAcceptConnection();
|
s->detachAcceptConnection();
|
||||||
}
|
}
|
||||||
@ -276,6 +275,9 @@ void Handler::postConnectConnectionEvent()
|
|||||||
s->status(), s->statusStr());
|
s->status(), s->statusStr());
|
||||||
mEventLoop->delSocket(s);
|
mEventLoop->delSocket(s);
|
||||||
s->close(this);
|
s->close(this);
|
||||||
|
if (!s->isShared()) {
|
||||||
|
mConnPool[s->server()->id()]->putPrivateConnection(s);
|
||||||
|
}
|
||||||
if (c) {
|
if (c) {
|
||||||
addPostEvent(c, Multiplexor::ErrorEvent);
|
addPostEvent(c, Multiplexor::ErrorEvent);
|
||||||
s->detachAcceptConnection();
|
s->detachAcceptConnection();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user