[Webkit-unassigned] [Bug 172586] New: [WinCairo] ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 25 02:35:52 PDT 2017


https://bugs.webkit.org/show_bug.cgi?id=172586

            Bug ID: 172586
           Summary: [WinCairo] ASSERTION FAILED:
                    !HashTranslator::equal(KeyTraits::emptyValue(), key)
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Web Template Framework
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: Hironori.Fujii at sony.com

[WinCairo] ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)

WinCairo port MiniBrowser, Debug build, trunk at 217407
I often see a following assertion failure.

> ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)
> C:\webkit\ga\WebKitBuild\Debug\DerivedSources\ForwardingHeaders\wtf/HashTable.h(587) : WTF::HashTable<unsigned int,struct WTF::KeyValuePair<unsigned int,class WTF::ThreadHolder *>,struct WTF::KeyValuePairKeyExtractor<struct WTF::KeyValuePair<unsigned int,class WTF::ThreadHolder *> >,struct WTF::IntHash<unsigned int>,struct WTF::HashMap<unsigned int,class WTF::ThreadHolder *,struct WTF::IntHash<unsigned int>,struct WTF::HashTraits<unsigned int>,struct WTF::HashTraits<class WTF::ThreadHolder *> >::KeyValuePairTraits,struct WTF::HashTraits<unsigned int> >::checkKey

Callstack:

> WTF.dll!WTFCrash() Line 292	C++
> WTF.dll!WTF::HashTable<unsigned int,WTF::KeyValuePair<unsigned int,WTF::ThreadHolder * __ptr64>,WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<unsigned int,WTF::ThreadHolder * __ptr64> >,WTF::IntHash<unsigned int>,WTF::HashMap<unsigned int,WTF::ThreadHolder * __ptr64,WTF::IntHash<unsigned int>,WTF::HashTraits<unsigned int>,WTF::HashTraits<WTF::ThreadHolder * __ptr64> >::KeyValuePairTraits,WTF::HashTraits<unsigned int> >::checkKey<WTF::HashMapTranslator<WTF::HashMap<unsigned int,WTF::ThreadHolder * __ptr64,WTF::IntHash<unsigned int>,WTF::HashTraits<unsigned int>,WTF::HashTraits<WTF::ThreadHolder * __ptr64> >::KeyValuePairTraits,WTF::IntHash<unsigned int> >,unsigned int>(const unsigned int & key) Line 587	C++
> WTF.dll!WTF::HashTable<unsigned int,WTF::KeyValuePair<unsigned int,WTF::ThreadHolder * __ptr64>,WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<unsigned int,WTF::ThreadHolder * __ptr64> >,WTF::IntHash<unsigned int>,WTF::HashMap<unsigned int,WTF::ThreadHolder * __ptr64,WTF::IntHash<unsigned int>,WTF::HashTraits<unsigned int>,WTF::HashTraits<WTF::ThreadHolder * __ptr64> >::KeyValuePairTraits,WTF::HashTraits<unsigned int> >::add<WTF::HashMapTranslator<WTF::HashMap<unsigned int,WTF::ThreadHolder * __ptr64,WTF::IntHash<unsigned int>,WTF::HashTraits<unsigned int>,WTF::HashTraits<WTF::ThreadHolder * __ptr64> >::KeyValuePairTraits,WTF::IntHash<unsigned int> >,unsigned int,WTF::ThreadHolder * __ptr64 & __ptr64>(unsigned int && key, WTF::ThreadHolder * & extra) Line 866	C++
> WTF.dll!WTF::HashMap<unsigned int,WTF::ThreadHolder * __ptr64,WTF::IntHash<unsigned int>,WTF::HashTraits<unsigned int>,WTF::HashTraits<WTF::ThreadHolder * __ptr64> >::inlineAdd<unsigned int,WTF::ThreadHolder * __ptr64 & __ptr64>(unsigned int && key, WTF::ThreadHolder * & value) Line 331	C++
> WTF.dll!WTF::HashMap<unsigned int,WTF::ThreadHolder * __ptr64,WTF::IntHash<unsigned int>,WTF::HashTraits<unsigned int>,WTF::HashTraits<WTF::ThreadHolder * __ptr64> >::add<WTF::ThreadHolder * __ptr64 & __ptr64>(unsigned int && key, WTF::ThreadHolder * & mapped) Line 373	C++
> WTF.dll!WTF::ThreadHolder::platformInitialize(WTF::ThreadHolder * holder) Line 86	C++
> WTF.dll!WTF::ThreadHolder::initialize(WTF::Thread & thread) Line 62	C++
> WTF.dll!WTF::wtfThreadEntryPoint(void * param) Line 159	C++
> WTF.dll!thread_start<unsigned int (__cdecl*)(void * __ptr64)>(void * const parameter) Line 115	C++
> [External Code]	

I checked 'key' argument of inlineAdd() by using VS debugger, it was 0.
This is the code of ThreadHolder::platformInitialize:

> void ThreadHolder::platformInitialize(ThreadHolder* holder)
> {
>     std::unique_lock<std::mutex> locker(threadMapMutex());
>     threadMap().add(holder->thread().id(), holder);
> }

holder->thread().id() seemed to return 0.
But, WTF::Thread::m_id was 12824.
This is weird.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170525/af3c068e/attachment-0001.html>


More information about the webkit-unassigned mailing list