- userrec* u = a->GetUser();
- /* Because ServerInstance->DoOneIteration can
- * take the user away from us in the middle of
- * our operation, we should check to see if this
- * pointer is still valid by iterating the hash.
- * It's expensive, yes, but the DoOneIteration
- * call stops it being horrendously bad.
- */
- if (IsValid(u))
- {
- kill_link(u,a->GetReason().c_str());
- list.erase(list.begin());
- /* So that huge numbers of quits dont block,
- * we yield back to our mainloop every 15
- * iterations.
- * The DoOneIteration call basically acts
- * like a software threading mechanism.
- */
- if (((n++) % 15) == 0)
- {
- ServerInstance->DoOneIteration(false);
- }
- }
- }
- return n;
+
+ kill_link(a->GetUser(), a->GetReason().c_str());
+ list.erase(list.begin());
+ }
+ return n;