fix invalid deref

This commit is contained in:
Glenn Maynard
2006-06-08 06:11:32 +00:00
parent 6b7b595b9f
commit 5d6e7427e0
+6 -4
View File
@@ -24,16 +24,18 @@ typedef multimap<RString,XNode*> XNodes;
#define FOREACH_Child( pNode, Var ) \
XNodes::iterator Var##Iter; \
XNode *Var = NULL; \
for( Var##Iter = (pNode)->m_childs.begin(), Var = Var##Iter->second; \
for( Var##Iter = (pNode)->m_childs.begin(); \
Var = (Var##Iter != (pNode)->m_childs.end())? Var##Iter->second:NULL, \
Var##Iter != (pNode)->m_childs.end(); \
++Var##Iter, Var = Var##Iter->second )
++Var##Iter )
#define FOREACH_CONST_Child( pNode, Var ) \
XNodes::const_iterator Var##Iter; \
const XNode *Var = NULL; \
for( Var##Iter = (pNode)->m_childs.begin(), Var = Var##Iter->second; \
for( Var##Iter = (pNode)->m_childs.begin(); \
Var = (Var##Iter != (pNode)->m_childs.end())? Var##Iter->second:NULL, \
Var##Iter != (pNode)->m_childs.end(); \
++Var##Iter, Var = Var##Iter->second )
++Var##Iter )
enum PCODE
{