X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/e9f74534ad9bd4df3cecab080f6b6ac9a6cb6b7c..aed33acba95ff60dcf9df45d342e76d499fda185:/projects/stargazer/users_impl.cpp diff --git a/projects/stargazer/users_impl.cpp b/projects/stargazer/users_impl.cpp index 14c44604..9985615f 100644 --- a/projects/stargazer/users_impl.cpp +++ b/projects/stargazer/users_impl.cpp @@ -319,6 +319,7 @@ STG_LOCKER lock(&mutex); if (FindByNameNonLock(login, &iter)) { WriteServLog("Attempt to unauthorize non-existant user '%s'", login.c_str()); + printfd(__FILE__, "Attempt to unauthorize non-existant user '%s'", login.c_str()); return false; } @@ -355,11 +356,22 @@ for (unsigned int i = 0; i < usersList.size(); i++) AddUserIntoIndexes(ui); - if (ui->ReadConf() < 0) - errors++; + if (settings->GetStopOnError()) + { + if (ui->ReadConf() < 0) + return -1; + + if (ui->ReadStat() < 0) + return -1; + } + else + { + if (ui->ReadConf() < 0) + errors++; - if (ui->ReadStat() < 0) - errors++; + if (ui->ReadStat() < 0) + errors++; + } } if (errors > 0) @@ -427,15 +439,7 @@ while (us->nonstop) stgUsleep(100000); } //while (us->nonstop) -user_iter ui = us->users.begin(); -while (ui != us->users.end()) - { - us->DelUserFromIndexes(ui); - ++ui; - } - -std::list::iterator iter; -iter = us->usersToDelete.begin(); +std::list::iterator iter(us->usersToDelete.begin()); while (iter != us->usersToDelete.end()) { iter->delTime -= 2 * userDeleteDelayTime;