Skip to content

Commit 45b1e8b

Browse files
Fix #12889 fuzzing crash (heap-use-after-free) in Tokenizer::simplifyTypedef() (#6847)
1 parent 1be39ad commit 45b1e8b

2 files changed

Lines changed: 2 additions & 1 deletion

File tree

lib/tokenize.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -698,7 +698,7 @@ namespace {
698698
mRangeAfterVar.second = mEndToken;
699699
return;
700700
}
701-
if (Token::Match(type, "%name% ( !!(") && Token::simpleMatch(type->linkAt(1), ") ;") && !type->isStandardType()) {
701+
if (type != start && Token::Match(type, "%name% ( !!(") && Token::simpleMatch(type->linkAt(1), ") ;") && !type->isStandardType()) {
702702
mNameToken = type;
703703
mEndToken = type->linkAt(1)->next();
704704
mRangeType.first = start;
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
typedef C();typedef const C*(*func2)();d(func2())

0 commit comments

Comments
 (0)