summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-11-11 12:41:03 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-11-11 12:41:03 +0000
commit7336f449ebaa068703e1caa7d8b1b7a9993b651f (patch)
treeb1673bd79f45e2c8fd0a0971f450e6bc42028c10
parentba79ba9fc1c95868ea1e9d4d700c014e21cc2d0f (diff)
Fix crashes from badly written safeiters
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8563 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--include/modules.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/include/modules.h b/include/modules.h
index 51f1630d4..5190563ef 100644
--- a/include/modules.h
+++ b/include/modules.h
@@ -125,10 +125,10 @@ typedef std::map<std::string, std::pair<int, modulelist> > interfacelist;
*/
#define FOREACH_MOD(y,x) do { \
EventHandlerIter safei; \
- for (EventHandlerIter _i = ServerInstance->Modules->EventHandlers[y].begin(); _i != ServerInstance->Modules->EventHandlers[y].end(); ++_i) \
+ for (EventHandlerIter _i = ServerInstance->Modules->EventHandlers[y].begin(); _i != ServerInstance->Modules->EventHandlers[y].end(); ) \
{ \
safei = _i; \
- safei++; \
+ ++safei; \
try \
{ \
(*_i)->x ; \
@@ -149,10 +149,10 @@ typedef std::map<std::string, std::pair<int, modulelist> > interfacelist;
*/
#define FOREACH_MOD_I(z,y,x) do { \
EventHandlerIter safei; \
- for (EventHandlerIter _i = z->Modules->EventHandlers[y].begin(); _i != z->Modules->EventHandlers[y].end(); ++_i) \
+ for (EventHandlerIter _i = z->Modules->EventHandlers[y].begin(); _i != z->Modules->EventHandlers[y].end(); ) \
{ \
safei = _i; \
- safei++; \
+ ++safei; \
try \
{ \
(*_i)->x ; \
@@ -174,10 +174,10 @@ typedef std::map<std::string, std::pair<int, modulelist> > interfacelist;
do { \
EventHandlerIter safei; \
MOD_RESULT = 0; \
- for (EventHandlerIter _i = ServerInstance->Modules->EventHandlers[y].begin(); _i != ServerInstance->Modules->EventHandlers[y].end(); ++_i) \
+ for (EventHandlerIter _i = ServerInstance->Modules->EventHandlers[y].begin(); _i != ServerInstance->Modules->EventHandlers[y].end(); ) \
{ \
safei = _i; \
- safei++; \
+ ++safei; \
try \
{ \
int res = (*_i)->x ; \
@@ -204,10 +204,10 @@ do { \
do { \
EventHandlerIter safei; \
MOD_RESULT = 0; \
- for (EventHandlerIter _i = z->Modules->EventHandlers[y].begin(); _i != z->Modules->EventHandlers[y].end(); ++_i) \
+ for (EventHandlerIter _i = z->Modules->EventHandlers[y].begin(); _i != z->Modules->EventHandlers[y].end(); ) \
{ \
safei = _i; \
- safei++; \
+ ++safei; \
try \
{ \
int res = (*_i)->x ; \