Merge pull request #1585 from Wolf480pl/adduser-fix

Fix memory leak and null dereference in CZNC::LoadUsers when reading invalid config
This commit is contained in:
Alexey Sokolov
2018-08-08 00:02:56 +01:00
committed by GitHub
+4 -5
View File
@@ -1275,13 +1275,12 @@ bool CZNC::LoadUsers(CConfig& config, CString& sError) {
}
CString sErr;
if (!AddUser(pUser.release(), sErr, true)) {
CUser* pRawUser = pUser.release();
if (!AddUser(pRawUser, sErr, true)) {
sError = "Invalid user [" + sUserName + "] " + sErr;
}
if (!sError.empty()) {
CUtils::PrintError(sError);
pUser->SetBeingDeleted(true);
pRawUser->SetBeingDeleted(true);
delete pRawUser;
return false;
}
}