From d73a4090c8c5e36ae0d9a3eb5cf5dd3e230befa8 Mon Sep 17 00:00:00 2001 From: Alexey Sokolov Date: Tue, 3 Oct 2017 08:03:37 +0100 Subject: [PATCH] Fix crash caused by an unsigned overflow. Thanks to Joseph Bisch for discovery. This was an artifact of converting ZNC to use CMessage. Released versions are not affected. --- src/IRCSock.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/IRCSock.cpp b/src/IRCSock.cpp index a0c5a07f..3e27e1f0 100644 --- a/src/IRCSock.cpp +++ b/src/IRCSock.cpp @@ -1320,7 +1320,7 @@ void CIRCSock::ReachedMaxBuffer() { void CIRCSock::ParseISupport(const CMessage& Message) { const VCString vsParams = Message.GetParams(); - for (size_t i = 1; i < vsParams.size() - 1; ++i) { + for (size_t i = 1; i + 1 < vsParams.size(); ++i) { const CString& sParam = vsParams[i]; CString sName = sParam.Token(0, false, "="); CString sValue = sParam.Token(1, true, "=");