summaryrefslogtreecommitdiffstats
path: root/src/classdef.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2021-01-05 18:08:12 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2021-01-05 18:08:12 (GMT)
commit3f4717ec5583dde8116205e1045095158ab56c15 (patch)
treec92a755efa7a5ae4a87f9f2201e04a6f7354ae90 /src/classdef.cpp
parent9884d11f94d6c0ea00c6962a38c608ce7f21ed9b (diff)
downloadDoxygen-3f4717ec5583dde8116205e1045095158ab56c15.zip
Doxygen-3f4717ec5583dde8116205e1045095158ab56c15.tar.gz
Doxygen-3f4717ec5583dde8116205e1045095158ab56c15.tar.bz2
Various fixes based on coverity scan results
Diffstat (limited to 'src/classdef.cpp')
-rw-r--r--src/classdef.cpp43
1 files changed, 23 insertions, 20 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp
index 6ddc3f9..88bc44c 100644
--- a/src/classdef.cpp
+++ b/src/classdef.cpp
@@ -3969,28 +3969,31 @@ ClassDef *ClassDefImpl::insertTemplateInstance(const QCString &fileName,
Doxygen::classLinkedMap->add(tcname,
std::unique_ptr<ClassDef>(
new ClassDefImpl(fileName,startLine,startColumn,tcname,ClassDef::Class))));
- templateClass->setTemplateMaster(this);
- templateClass->setOuterScope(getOuterScope());
- templateClass->setHidden(isHidden());
- templateClass->setArtificial(isArtificial());
- m_impl->templateInstances->insert(templSpec,templateClass);
-
- // also add nested classes
- for (const auto &innerCd : m_impl->innerClasses)
+ if (templateClass)
{
- QCString innerName = tcname+"::"+innerCd->localName();
- ClassDefMutable *innerClass =
- toClassDefMutable(
- Doxygen::classLinkedMap->add(innerName,
- std::unique_ptr<ClassDef>(
- new ClassDefImpl(fileName,startLine,startColumn,innerName,ClassDef::Class))));
- if (innerClass)
+ templateClass->setTemplateMaster(this);
+ templateClass->setOuterScope(getOuterScope());
+ templateClass->setHidden(isHidden());
+ templateClass->setArtificial(isArtificial());
+ m_impl->templateInstances->insert(templSpec,templateClass);
+
+ // also add nested classes
+ for (const auto &innerCd : m_impl->innerClasses)
{
- templateClass->addInnerCompound(innerClass);
- innerClass->setOuterScope(templateClass);
- innerClass->setHidden(isHidden());
- innerClass->setArtificial(TRUE);
- freshInstance=TRUE;
+ QCString innerName = tcname+"::"+innerCd->localName();
+ ClassDefMutable *innerClass =
+ toClassDefMutable(
+ Doxygen::classLinkedMap->add(innerName,
+ std::unique_ptr<ClassDef>(
+ new ClassDefImpl(fileName,startLine,startColumn,innerName,ClassDef::Class))));
+ if (innerClass)
+ {
+ templateClass->addInnerCompound(innerClass);
+ innerClass->setOuterScope(templateClass);
+ innerClass->setHidden(isHidden());
+ innerClass->setArtificial(TRUE);
+ freshInstance=TRUE;
+ }
}
}
}