summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2018-12-26 19:31:57 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2018-12-26 19:31:57 (GMT)
commitcdf3cdb1ccf408fde0256cbbb10f09cf9436b5bb (patch)
tree7bb4b237e7666e5cbd32eb2bade3d5b59cb6b489
parent6102ff5e5d93db9f23ebff8255302bcdb238ce49 (diff)
downloadDoxygen-cdf3cdb1ccf408fde0256cbbb10f09cf9436b5bb.zip
Doxygen-cdf3cdb1ccf408fde0256cbbb10f09cf9436b5bb.tar.gz
Doxygen-cdf3cdb1ccf408fde0256cbbb10f09cf9436b5bb.tar.bz2
Fixed regression after fixing memory leak
-rw-r--r--src/configimpl.l4
-rw-r--r--src/marshal.cpp9
-rw-r--r--src/memberlist.cpp2
3 files changed, 10 insertions, 5 deletions
diff --git a/src/configimpl.l b/src/configimpl.l
index b533910..644250f 100644
--- a/src/configimpl.l
+++ b/src/configimpl.l
@@ -712,7 +712,7 @@ static void readIncludeFile(const char *incName)
if (option==0) // oops not known
{
config_warn("ignoring unsupported tag `%s' at line %d, file %s\n",
- yytext,yyLineNr,yyFileName.data());
+ cmd.data(),yyLineNr,yyFileName.data());
BEGIN(SkipInvalid);
}
else // known tag
@@ -788,7 +788,7 @@ static void readIncludeFile(const char *incName)
if (option==0) // oops not known
{
config_warn("ignoring unsupported tag `%s' at line %d, file %s\n",
- yytext,yyLineNr,yyFileName.data());
+ cmd.data(),yyLineNr,yyFileName.data());
BEGIN(SkipInvalid);
}
else // known tag
diff --git a/src/marshal.cpp b/src/marshal.cpp
index 1c7d54e..c68718a 100644
--- a/src/marshal.cpp
+++ b/src/marshal.cpp
@@ -142,7 +142,6 @@ void marshalSectionInfoList(StorageIntf *s, QList<SectionInfo> *anchors)
marshalQCString(s,si->fileName);
marshalInt(s,si->lineNr);
marshalInt(s,si->level);
- delete Doxygen::sectionDict->take(si->label); // this dict owns the anchor objects
}
anchors->clear();
}
@@ -564,12 +563,18 @@ QList<SectionInfo> *unmarshalSectionInfoList(StorageIntf *s)
QCString fileName = unmarshalQCString(s);
int lineNr = unmarshalInt(s);
int level = unmarshalInt(s);
- if (Doxygen::sectionDict->find(label)==0)
+ SectionInfo *si = Doxygen::sectionDict->find(label);
+ if (si==0) // This should actually never be true since all anchors should be in sectionDict.
+ // Could still optimize the marshaling routine by only storing label.
{
SectionInfo *si = new SectionInfo(fileName,lineNr,label,title,type,level,ref);
anchors->append(si);
Doxygen::sectionDict->append(label,si); // this dict owns the anchor objects
}
+ else
+ {
+ anchors->append(si);
+ }
}
return anchors;
}
diff --git a/src/memberlist.cpp b/src/memberlist.cpp
index a4e5596..abb8aff 100644
--- a/src/memberlist.cpp
+++ b/src/memberlist.cpp
@@ -745,7 +745,7 @@ void MemberList::writeDocumentation(OutputList &ol,
}
if (memberGroupList)
{
- printf("MemberList::writeDocumentation() -- member groups %d\n",memberGroupList->count());
+ //printf("MemberList::writeDocumentation() -- member groups %d\n",memberGroupList->count());
MemberGroupListIterator mgli(*memberGroupList);
MemberGroup *mg;
for (;(mg=mgli.current());++mgli)