mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-01 05:01:59 +01: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. llvm-svn: 237389
This commit is contained in:
parent
7b7b1f4d51
commit
4e18fe8319
@ -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