summaryrefslogtreecommitdiffstats
path: root/src/definition.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-11-14 14:27:28 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-11-14 14:27:28 (GMT)
commit24902b409ffcb473e28d629f3174ec6a3dd24c65 (patch)
tree8355144d10dcdc8ebdf83d76bb28581bb077ca11 /src/definition.cpp
parent942b57dcbe7ac23a9d24a61eb60f84ca1f3b4f80 (diff)
downloadDoxygen-24902b409ffcb473e28d629f3174ec6a3dd24c65.zip
Doxygen-24902b409ffcb473e28d629f3174ec6a3dd24c65.tar.gz
Doxygen-24902b409ffcb473e28d629f3174ec6a3dd24c65.tar.bz2
Fix for crash when using members of a partially constructed object
Diffstat (limited to 'src/definition.cpp')
-rw-r--r--src/definition.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/definition.cpp b/src/definition.cpp
index 0d301c0..8b6e6fa 100644
--- a/src/definition.cpp
+++ b/src/definition.cpp
@@ -2179,15 +2179,22 @@ void DefinitionImpl::writeSummaryLinks(OutputList &) const
//---------------------------------------------------------------------------------
DefinitionAliasImpl::DefinitionAliasImpl(Definition *def,const Definition *alias)
- : m_def(def)
+ : m_def(def), m_alias(alias)
{
- //printf("%s::addToMap(%s)\n",qPrint(name()),qPrint(alias->name()));
- addToMap(alias->name(),m_def);
}
DefinitionAliasImpl::~DefinitionAliasImpl()
{
- //printf("~DefinitionAliasImpl()\n");
+}
+
+void DefinitionAliasImpl::init()
+{
+ //printf("%s::addToMap(%s)\n",qPrint(name()),qPrint(alias->name()));
+ addToMap(m_alias->name(),m_def);
+}
+
+void DefinitionAliasImpl::deinit()
+{
removeFromMap(m_def);
}