diff options
| author | 2006-07-19 19:49:15 +0000 | |
|---|---|---|
| committer | 2006-07-19 19:49:15 +0000 | |
| commit | 283fdc99a8293a97c08b9af111193b45e09f4bc5 (patch) | |
| tree | 5fb1ccdebd47b47b141a5efb00b506bfcb5bb15b /src/userprocess.cpp | |
| parent | Special checking for muppet providers that make their reverse resolution reso... (diff) | |
| download | inspircd++-283fdc99a8293a97c08b9af111193b45e09f4bc5.tar.gz inspircd++-283fdc99a8293a97c08b9af111193b45e09f4bc5.tar.bz2 inspircd++-283fdc99a8293a97c08b9af111193b45e09f4bc5.zip | |
Safties
git-svn-id: http://svn.inspircd.org/repository/branches/1_0_stable@4451 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/userprocess.cpp')
| -rw-r--r-- | src/userprocess.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/userprocess.cpp b/src/userprocess.cpp index 2f11528f3..9ae68cbfd 100644 --- a/src/userprocess.cpp +++ b/src/userprocess.cpp @@ -341,8 +341,14 @@ void DoBackgroundUserStuff(time_t TIME) { CullList GlobalGoners; + size_t f = local_users.size(); + for (std::vector<userrec*>::iterator count2 = local_users.begin(); count2 != local_users.end(); count2++) { + /* GRONK */ + if (f != local_users.size()) + break; + /* Sanity checks for corrupted iterators (yes, really) */ userrec* curr = NULL; @@ -401,6 +407,10 @@ void DoBackgroundUserStuff(time_t TIME) curr->nping = TIME+curr->pingmax; } + /* GANK */ + if (f != local_users.size()) + break; + /* * We can flush the write buffer as the last thing we do, because if they * match any of the above conditions its no use flushing their buffer anyway. |
