diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WTF/wtf/text/AtomicStringTable.cpp | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/WTF/wtf/text/AtomicStringTable.cpp')
-rw-r--r-- | Source/WTF/wtf/text/AtomicStringTable.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/Source/WTF/wtf/text/AtomicStringTable.cpp b/Source/WTF/wtf/text/AtomicStringTable.cpp index d961b17e2..fe8a4884d 100644 --- a/Source/WTF/wtf/text/AtomicStringTable.cpp +++ b/Source/WTF/wtf/text/AtomicStringTable.cpp @@ -37,25 +37,28 @@ void AtomicStringTable::create(WTFThreadData& data) bool currentThreadIsWebThread = isWebThread(); if (currentThreadIsWebThread || isUIThread()) - data.m_atomicStringTable = sharedStringTable; + data.m_defaultAtomicStringTable = sharedStringTable; else - data.m_atomicStringTable = new AtomicStringTable; + data.m_defaultAtomicStringTable = new AtomicStringTable; // We do the following so that its destruction happens only // once - on the main UI thread. if (!currentThreadIsWebThread) data.m_atomicStringTableDestructor = AtomicStringTable::destroy; #else - data.m_atomicStringTable = new AtomicStringTable; + data.m_defaultAtomicStringTable = new AtomicStringTable; data.m_atomicStringTableDestructor = AtomicStringTable::destroy; #endif // USE(WEB_THREAD) } +AtomicStringTable::~AtomicStringTable() +{ + for (auto* string : m_table) + string->setIsAtomic(false); +} + void AtomicStringTable::destroy(AtomicStringTable* table) { - HashSet<StringImpl*>::iterator end = table->m_table.end(); - for (HashSet<StringImpl*>::iterator iter = table->m_table.begin(); iter != end; ++iter) - (*iter)->setIsAtomic(false); delete table; } |