diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2003-01-06 20:54:16 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2003-01-06 20:54:16 (GMT) |
commit | f781e6dbbaa51edbdbe9b5906be9962968d0ee68 (patch) | |
tree | b008f56412d0734ea397eb4492ddd66c08677dff /src/tagreader.cpp | |
parent | dfa656f3404e589ad59c47dc1728744efb245a82 (diff) | |
download | Doxygen-f781e6dbbaa51edbdbe9b5906be9962968d0ee68.zip Doxygen-f781e6dbbaa51edbdbe9b5906be9962968d0ee68.tar.gz Doxygen-f781e6dbbaa51edbdbe9b5906be9962968d0ee68.tar.bz2 |
Release-1.3-rc2-20030106
Diffstat (limited to 'src/tagreader.cpp')
-rw-r--r-- | src/tagreader.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/tagreader.cpp b/src/tagreader.cpp index 1637044..8302eb5 100644 --- a/src/tagreader.cpp +++ b/src/tagreader.cpp @@ -186,6 +186,8 @@ class TagFileParser : public QXmlDefaultHandler m_endElementHandlers(17), m_tagName(tagName) { + m_startElementHandlers.setAutoDelete(TRUE); + m_endElementHandlers.setAutoDelete(TRUE); } void startCompound( const QXmlAttributes& attrib ) @@ -305,7 +307,8 @@ class TagFileParser : public QXmlDefaultHandler void endMember() { - m_state = *m_stateStack.pop(); + m_state = *m_stateStack.top(); + m_stateStack.remove(); switch(m_state) { case InClass: m_curClass->members.append(m_curMember); break; @@ -884,6 +887,7 @@ void TagFileParser::buildMemberList(Entry *ce,QList<TagMemberInfo> &members) me->args = tmi->arglist; if (!me->args.isEmpty()) { + delete me->argList; me->argList = new ArgumentList; stringToArgumentList(me->args,me->argList); } @@ -1006,11 +1010,16 @@ void TagFileParser::buildLists(Entry *root) // transfer base class list if (tci->bases) { + delete ce->extends; ce->extends = tci->bases; tci->bases = 0; } if (tci->templateArguments) { - if (ce->tArgLists==0) ce->tArgLists = new QList<ArgumentList>; + if (ce->tArgLists==0) + { + ce->tArgLists = new QList<ArgumentList>; + ce->tArgLists->setAutoDelete(TRUE); + } ArgumentList *al = new ArgumentList; ce->tArgLists->append(al); |