[demangler] Fix an oss-fuzz bug from r338138
authorErik Pilkington <erik.pilkington@gmail.com>
Sat, 28 Jul 2018 04:06:30 +0000 (04:06 +0000)
committerErik Pilkington <erik.pilkington@gmail.com>
Sat, 28 Jul 2018 04:06:30 +0000 (04:06 +0000)
commit256db4b799a7c6e01d5210099f403b1bf124e2ba
tree303df3c8a45d0206a42694527ed93dbdf73785f0
parenta6b5e0036128acfb0950f567cc83d351a5218fd6
[demangler] Fix an oss-fuzz bug from r338138

Stack overflow on invalid. While collapsing references, we were skipping over a
cycle check in ForwardTemplateReference leading to a stack overflow. This commit
fixes the problem by duplicating the cycle check in ReferenceType.

llvm-svn: 338190
libcxxabi/src/cxa_demangle.cpp
llvm/lib/Demangle/ItaniumDemangle.cpp