mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-05 11:57:07 +00:00
Fix memory leak introduced in r237314.
The commit r237314 that implements YAML block parsing introduced a leak that was caught by the ASAN linux buildbot. YAML Parser stores its tokens in an ilist, and allocates tokens using a BumpPtrAllocator, but doesn't call the destructor for the allocated tokens. R237314 added an std::string field to a Token which leaked as the Token's destructor wasn't called. This commit fixes this leak by calling the Token's destructor when a Token is being removed from an ilist of tokens. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237389 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
abf95a22c4
commit
4789642b0b
@ -168,7 +168,7 @@ struct ilist_node_traits<Token> {
|
||||
Token *createNode(const Token &V) {
|
||||
return new (Alloc.Allocate<Token>()) Token(V);
|
||||
}
|
||||
static void deleteNode(Token *V) {}
|
||||
static void deleteNode(Token *V) { V->~Token(); }
|
||||
|
||||
void addNodeToList(Token *) {}
|
||||
void removeNodeFromList(Token *) {}
|
||||
|
Loading…
x
Reference in New Issue
Block a user