summaryrefslogtreecommitdiffstats
path: root/src/doxygen.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2014-08-26 18:18:51 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2014-08-26 18:18:51 (GMT)
commit6d4044ad43ae1424a256eb1c26992301e7c64f4a (patch)
tree59ff43371e5c9503fda7432109c1313ffff0225a /src/doxygen.cpp
parent745955f576cbd7b5f7601c55937d9c42db8161e8 (diff)
downloadDoxygen-6d4044ad43ae1424a256eb1c26992301e7c64f4a.zip
Doxygen-6d4044ad43ae1424a256eb1c26992301e7c64f4a.tar.gz
Doxygen-6d4044ad43ae1424a256eb1c26992301e7c64f4a.tar.bz2
Fix potential crash when reading tag file which contained nested java classes using generics
Also fixed a parse error when reading a tag file with a Java-style enum
Diffstat (limited to 'src/doxygen.cpp')
-rw-r--r--src/doxygen.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 533e6ef..5492dc9 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -1037,9 +1037,16 @@ static Definition *buildScopeFromQualifiedName(const QCString name,
else // scope is a namespace
{
}
- // make the parent/child scope relation
- prevScope->addInnerCompound(innerScope);
- innerScope->setOuterScope(prevScope);
+ if (innerScope)
+ {
+ // make the parent/child scope relation
+ prevScope->addInnerCompound(innerScope);
+ innerScope->setOuterScope(prevScope);
+ }
+ else // current scope is a class, so return only the namespace part...
+ {
+ return prevScope;
+ }
// proceed to the next scope fragment
p=idx+l+2;
prevScope=innerScope;