diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog index e89628ac2a0a20c28e20f9f34da9b9c966a4d9b7..d053f6a7466768a04ecb61820e9b58b8fcc8187a 100644 --- a/JavaScriptCore/ChangeLog +++ b/JavaScriptCore/ChangeLog @@ -1,3 +1,13 @@ +2008-05-05 Darin Adler + + Reviewed by John Sullivan. + + - fix debug-only leak seen on buildbot + + * wtf/HashTable.h: + (WTF::HashTable::checkKey): After writing an empty value in, but before constructing a + deleted value on top of it, call the destructor so the empty value doesn't leak. + 2008-05-02 Alexey Proskuryakov Reviewed by Geoffrey Garen. diff --git a/JavaScriptCore/wtf/HashTable.h b/JavaScriptCore/wtf/HashTable.h index d4e267992014713fd387af72ee609e1558bd97bd..d31b9c6416d9c43c6b4efb72c03ac3bd1c1d4968 100644 --- a/JavaScriptCore/wtf/HashTable.h +++ b/JavaScriptCore/wtf/HashTable.h @@ -443,6 +443,7 @@ namespace WTF { return; ASSERT(!HashTranslator::equal(KeyTraits::emptyValue(), key)); ValueType deletedValue = Traits::emptyValue(); + deletedValue.~ValueType(); Traits::constructDeletedValue(&deletedValue); ASSERT(!HashTranslator::equal(Extractor::extract(deletedValue), key)); new (&deletedValue) ValueType(Traits::emptyValue());