Changeset 27710 in webkit for trunk/JavaScriptCore/ChangeLog
- Timestamp:
- Nov 11, 2007, 10:44:26 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r27709 r27710 1 2007-11-11 Adam Roben <[email protected]> 2 3 Fix <rdar://5578982> ASSERT in HashTable::checkTableConsistencyExceptSize beneath WebNotificationCenter 4 5 The bug was due to a mismatch between HashMap::remove and 6 HashTable::checkTableConsistency. HashMap::remove can delete the value 7 stored in the HashTable (by derefing it), which is not normally 8 allowed by HashTable. It's OK in this case because the value is about 9 to be removed from the table, but HashTable wasn't aware of this. 10 11 HashMap::remove now performs the consistency check itself before 12 derefing the value. 13 14 Darin noticed that the same bug would occur in HashSet, so I've fixed 15 it there as well. 16 17 Reviewed by Darin. 18 19 * wtf/HashMap.h: 20 (WTF::HashMap::remove): Perform the HashTable consistency check 21 manually before calling deref. 22 * wtf/HashSet.h: 23 (WTF::HashSet::remove): Ditto. 24 * wtf/HashTable.h: Made checkTableConsistency public so that HashMap 25 and HashSet can call it. 26 (WTF::HashTable::removeAndInvalidateWithoutEntryConsistencyCheck): 27 Added. 28 (WTF::HashTable::removeAndInvalidate): Added. 29 (WTF::HashTable::remove): 30 (WTF::HashTable::removeWithoutEntryConsistencyCheck): Added. 31 1 32 2007-11-11 Mark Rowe <[email protected]> 2 33
Note:
See TracChangeset
for help on using the changeset viewer.