X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/e9f74534ad9bd4df3cecab080f6b6ac9a6cb6b7c..c3a5bb488a4b62f7d4c273c410e23317e775f9c9:/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<USER_TO_DEL>::iterator iter;
-iter = us->usersToDelete.begin();
+std::list<USER_TO_DEL>::iterator iter(us->usersToDelete.begin());
 while (iter != us->usersToDelete.end())
     {
     iter->delTime -= 2 * userDeleteDelayTime;