mirror of
https://github.com/znc/znc.git
synced 2026-03-28 17:42:41 +01:00
Fix nullptr dereference
If client sends TAGMSG while server is not connected
This commit is contained in:
@@ -1657,7 +1657,7 @@ bool CClient::OnTagMessage(CTargetMessage& Message) {
|
||||
if (m_pNetwork) {
|
||||
AddBuffer(Message);
|
||||
EchoMessage(Message);
|
||||
if (GetIRCSock()->HasMessageTagCap()) {
|
||||
if (GetIRCSock() && GetIRCSock()->HasMessageTagCap()) {
|
||||
PutIRCStripping(Message);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1210,5 +1210,16 @@ TEST_F(ZNCTest, Issue1960) {
|
||||
ircd2.ReadUntil("@foo TAGMSG #bar");
|
||||
}
|
||||
|
||||
TEST_F(ZNCTest, DisconnectedTagmsgCrash) {
|
||||
auto znc = Run();
|
||||
auto ircd = ConnectIRCd();
|
||||
auto client = LoginClient();
|
||||
client.Write("znc disconnect");
|
||||
client.ReadUntil("Disconnected");
|
||||
client.Write("@foo TAGMSG #foo");
|
||||
client.Write("znc help");
|
||||
client.ReadUntil("AddServer");
|
||||
}
|
||||
|
||||
} // namespace
|
||||
} // namespace znc_inttest
|
||||
|
||||
Reference in New Issue
Block a user