Bug 148757
Summary: | [WPE][GTK] Several memory leaks in WebKit::IconDatabase | ||
---|---|---|---|
Product: | WebKit | Reporter: | Michael Catanzaro <mcatanzaro> |
Component: | WebCore Misc. | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | bugs-noreply, mcatanzaro |
Priority: | P2 | ||
Version: | Other | ||
Hardware: | PC | ||
OS: | Linux |
Michael Catanzaro
Reported by asan:
Direct leak of 5424 byte(s) in 226 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d65496868 in WebCore::PageURLRecord::operator new(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2e868)
#7 0x7f1d6548e4d8 in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b264d8)
#8 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#9 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#10 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#11 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#12 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#13 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#14 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#15 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Direct leak of 72 byte(s) in 3 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d65496868 in WebCore::PageURLRecord::operator new(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2e868)
#7 0x7f1d654885b6 in WebCore::IconDatabase::performRetainIconForPageURL(WTF::String const&, int) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b205b6)
#8 0x7f1d65486fcb in WebCore::IconDatabase::performPendingRetainAndReleaseOperations() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1efcb)
#9 0x7f1d6548d7ba in WebCore::IconDatabase::syncThreadMainLoop() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b257ba)
#10 0x7f1d6548d40b in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2540b)
#11 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#12 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#13 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#14 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#15 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#16 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#17 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Direct leak of 32 byte(s) in 1 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d5d63824e in WTF::fastZeroedMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d5224e)
#7 0x7f1d5d649b1b in WTF::(anonymous namespace)::Hashtable::create(unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d63b1b)
#8 0x7f1d5d648aee in WTF::(anonymous namespace)::ensureHashtable() (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d62aee)
#9 0x7f1d5d648697 in WTF::(anonymous namespace)::lockHashtable() (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d62697)
#10 0x7f1d5d64cbcb in WTF::(anonymous namespace)::ensureHashtableSize(unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d66bcb)
#11 0x7f1d5d64caab in WTF::(anonymous namespace)::ThreadData::ThreadData() (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d66aab)
#12 0x7f1d5d64c8be in WTF::ThreadSpecific<WTF::(anonymous namespace)::ThreadData>::operator WTF::(anonymous namespace)::ThreadData*() (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d668be)
#13 0x7f1d5d647584 in WTF::(anonymous namespace)::myThreadData() (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d61584)
#14 0x7f1d5d646f9f in WTF::ParkingLot::parkConditionally(void const*, std::function<bool ()>, std::function<void ()>, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d60f9f)
#15 0x7f1d646b304f in bool WTF::ConditionBase::waitUntil<WTF::Lock>(WTF::Lock&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x5d4b04f)
#16 0x7f1d646b2eaf in void WTF::ConditionBase::wait<WTF::Lock>(WTF::Lock&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x5d4aeaf)
#17 0x7f1d6548d981 in WebCore::IconDatabase::syncThreadMainLoop() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b25981)
#18 0x7f1d6548d40b in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2540b)
#19 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#20 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#21 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#22 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#23 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#24 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#25 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 33776 byte(s) in 226 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d5d68a5ed in WTF::Ref<WTF::StringImpl> WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned short>(unsigned int, unsigned short*&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1da45ed)
#7 0x7f1d5d689ca2 in WTF::Ref<WTF::StringImpl> WTF::StringImpl::createInternal<unsigned short>(unsigned short const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1da3ca2)
#8 0x7f1d5d67c16d in WTF::StringImpl::create(unsigned short const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d9616d)
#9 0x7f1d5d694a0e in WTF::String::String(unsigned short const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1daea0e)
#10 0x7f1d6588e62a in WebCore::SQLiteStatement::getColumnText(int) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6f2662a)
#11 0x7f1d6548e44a in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2644a)
#12 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#13 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#14 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#15 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#16 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#17 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#18 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#19 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 4352 byte(s) in 11 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d5d63824e in WTF::fastZeroedMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d5224e)
#7 0x7f1d63cbd0de in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::allocateTable(unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x53550de)
#8 0x7f1d63ea5410 in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::rehash(unsigned int, WTF::String*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553d410)
#9 0x7f1d63ea506b in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::expand(WTF::String*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553d06b)
#10 0x7f1d63ea4eda in WTF::HashTableAddResult<WTF::HashTableIterator<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> > > WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::add<WTF::IdentityHashTranslator<WTF::StringHash>, WTF::String const&, WTF::String const&>(WTF::String const&, WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553ceda)
#11 0x7f1d63ea4c1b in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::add(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553cc1b)
#12 0x7f1d63ea4b3d in WTF::HashSet<WTF::String, WTF::StringHash, WTF::HashTraits<WTF::String> >::add(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553cb3d)
#13 0x7f1d654adae2 in WebCore::PageURLRecord::setIconRecord(WTF::PassRefPtr<WebCore::IconRecord>) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b45ae2)
#14 0x7f1d6548e5cd in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b265cd)
#15 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#16 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#17 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#18 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#19 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#20 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#21 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#22 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 4224 byte(s) in 38 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d5d68a5ed in WTF::Ref<WTF::StringImpl> WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned short>(unsigned int, unsigned short*&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1da45ed)
#7 0x7f1d5d689ca2 in WTF::Ref<WTF::StringImpl> WTF::StringImpl::createInternal<unsigned short>(unsigned short const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1da3ca2)
#8 0x7f1d5d67c16d in WTF::StringImpl::create(unsigned short const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d9616d)
#9 0x7f1d5d694a0e in WTF::String::String(unsigned short const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1daea0e)
#10 0x7f1d6588e62a in WebCore::SQLiteStatement::getColumnText(int) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6f2662a)
#11 0x7f1d6548e45f in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2645f)
#12 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#13 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#14 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#15 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#16 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#17 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#18 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#19 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 3040 byte(s) in 38 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d654ac618 in WTF::RefCounted<WebCore::IconRecord>::operator new(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b44618)
#7 0x7f1d65496779 in WebCore::IconRecord::create(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2e779)
#8 0x7f1d6548a2cd in WebCore::IconDatabase::getOrCreateIconRecord(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b222cd)
#9 0x7f1d6548e5ba in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b265ba)
#10 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#11 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#12 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#13 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#14 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#15 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#16 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#17 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 1728 byte(s) in 27 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d5d63824e in WTF::fastZeroedMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d5224e)
#7 0x7f1d63cbd0de in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::allocateTable(unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x53550de)
#8 0x7f1d63ea5410 in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::rehash(unsigned int, WTF::String*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553d410)
#9 0x7f1d63ea506b in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::expand(WTF::String*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553d06b)
#10 0x7f1d63ea4d06 in WTF::HashTableAddResult<WTF::HashTableIterator<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> > > WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::add<WTF::IdentityHashTranslator<WTF::StringHash>, WTF::String const&, WTF::String const&>(WTF::String const&, WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553cd06)
#11 0x7f1d63ea4c1b in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::add(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553cc1b)
#12 0x7f1d63ea4b3d in WTF::HashSet<WTF::String, WTF::StringHash, WTF::HashTraits<WTF::String> >::add(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x553cb3d)
#13 0x7f1d654adae2 in WebCore::PageURLRecord::setIconRecord(WTF::PassRefPtr<WebCore::IconRecord>) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b45ae2)
#14 0x7f1d6548e5cd in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b265cd)
#15 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#16 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#17 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#18 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#19 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#20 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#21 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#22 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 199 byte(s) in 3 object(s) allocated from:
#0 0x7f1d6e115a0a in malloc (/lib64/libasan.so.2+0x98a0a)
#1 0x7f1d5d6b9285 in bmalloc::Allocator::allocateSlowCase(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dd3285)
#2 0x7f1d5d6397ac in bmalloc::Allocator::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d537ac)
#3 0x7f1d5d6396e5 in bmalloc::Cache::allocate(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d536e5)
#4 0x7f1d5d638928 in bmalloc::api::malloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52928)
#5 0x7f1d5d638278 in WTF::fastMalloc(unsigned long) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d52278)
#6 0x7f1d5d689f1a in WTF::Ref<WTF::StringImpl> WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned char>(unsigned int, unsigned char*&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1da3f1a)
#7 0x7f1d5d689e22 in WTF::Ref<WTF::StringImpl> WTF::StringImpl::createInternal<unsigned char>(unsigned char const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1da3e22)
#8 0x7f1d5d67c18d in WTF::StringImpl::create(unsigned char const*, unsigned int) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d9618d)
#9 0x7f1d5ca5bcfd in WTF::StringImpl::isolatedCopy() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1175cfd)
#10 0x7f1d5d698d12 in WTF::String::isolatedCopy() const & (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1db2d12)
#11 0x7f1d65488597 in WebCore::IconDatabase::performRetainIconForPageURL(WTF::String const&, int) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b20597)
#12 0x7f1d65486fcb in WebCore::IconDatabase::performPendingRetainAndReleaseOperations() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1efcb)
#13 0x7f1d6548d7ba in WebCore::IconDatabase::syncThreadMainLoop() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b257ba)
#14 0x7f1d6548d40b in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2540b)
#15 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#16 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#17 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#18 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#19 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#20 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#21 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Indirect leak of 38 byte(s) in 38 object(s) allocated from:
#0 0x7f1d6e116912 in operator new(unsigned long) (/lib64/libasan.so.2+0x99912)
#1 0x7f1d63cbcfd3 in std::_Unique_if<WTF::Lock>::_Single_object std::make_unique<WTF::Lock>() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x5354fd3)
#2 0x7f1d63cc671d in WTF::HashTable<WTF::String, WTF::String, WTF::IdentityExtractor, WTF::StringHash, WTF::HashTraits<WTF::String>, WTF::HashTraits<WTF::String> >::HashTable() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e71d)
#3 0x7f1d63cc66f8 in WTF::HashSet<WTF::String, WTF::StringHash, WTF::HashTraits<WTF::String> >::HashSet() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e6f8)
#4 0x7f1d654ad1f5 in WebCore::IconRecord::IconRecord(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b451f5)
#5 0x7f1d65496787 in WebCore::IconRecord::create(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b2e787)
#6 0x7f1d6548a2cd in WebCore::IconDatabase::getOrCreateIconRecord(WTF::String const&) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b222cd)
#7 0x7f1d6548e5ba in WebCore::IconDatabase::performURLImport() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b265ba)
#8 0x7f1d6548d3ac in WebCore::IconDatabase::iconDatabaseSyncThread() (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b253ac)
#9 0x7f1d65485e68 in WebCore::IconDatabase::iconDatabaseSyncThreadStart(void*) (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x6b1de68)
#10 0x7f1d5d65345f in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d45f)
#11 0x7f1d5d653330 in std::_Function_handler<void (), WTF::createThread(void (*)(void*), void*, char const*)::$_0>::_M_invoke(std::_Any_data const&) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6d330)
#12 0x7f1d63cc67bb in std::function<void ()>::operator()() const (/home/mcatanzaro/jhbuild/install/lib/libwebkit2gtk-4.0.so.37+0x535e7bb)
#13 0x7f1d5d652faf in WTF::threadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1d6cfaf)
#14 0x7f1d5d6a3b94 in WTF::wtfThreadEntryPoint(void*) (/home/mcatanzaro/jhbuild/install/lib/libjavascriptcoregtk-4.0.so.18+0x1dbdb94)
#15 0x7f1d577c0554 in start_thread (/lib64/libpthread.so.0+0x7554)
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Michael Catanzaro
Still valid. I've tried to debug this several times during the past three years since I reported this, but got nowhere. It would probably be best to simply rewrite the IconDatabase class from scratch.