Summary: | [Win64] Exceptions with CHECK_HASHTABLE_ITERATORS | ||
---|---|---|---|
Product: | WebKit | Reporter: | Brent Fulgham <bfulgham> |
Component: | WebCore Misc. | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED DUPLICATE | ||
Severity: | Normal | CC: | andersca, ap, bfulgham |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
This exception seems to be happening after the tests complete, during program shutdown (i.e., at the point where the program is returning from 'main'. From the signature of the HashTable, it looks like this is a ListHashSet object. A cursory scan through the sources doesn't reveal any likely ListHashSet global objects that might be the cause. *** This bug has been marked as a duplicate of bug 133553 *** |
I'm encountering exceptions when attempting to run TestWebKitAPI under 64-bit (Debug) Windows builds. This appears to be happening when a HashTable is being destroyed, and the 'invalidateIterators' call is made. Unhandled exception at 0x00007FF94D425BF8 in TestWebKitAPI.exe: Microsoft C++ exception: Concurrency::scheduler_resource_allocation_error at memory location 0x000000000013F788. Call stack: KernelBase.dll!RaiseException() Unknown [External Code] WebKit.dll!Concurrency::details::SchedulerBase::SchedulerBase(const Concurrency::SchedulerPolicy & policy) Line 149 C++ WebKit.dll!Concurrency::details::ThreadScheduler::ThreadScheduler(const Concurrency::SchedulerPolicy & policy) Line 27 C++ WebKit.dll!Concurrency::details::ThreadScheduler::Create(const Concurrency::SchedulerPolicy & policy) Line 34 C++ WebKit.dll!Concurrency::details::SchedulerBase::CreateWithoutInitializing(const Concurrency::SchedulerPolicy & policy) Line 285 C++ WebKit.dll!Concurrency::details::SchedulerBase::GetDefaultScheduler() Line 654 C++ WebKit.dll!Concurrency::details::SchedulerBase::CreateContextFromDefaultScheduler() Line 573 C++ WebKit.dll!Concurrency::details::LockQueueNode::LockQueueNode(unsigned int timeout) Line 619 C++ WebKit.dll!Concurrency::critical_section::lock() Line 1031 C++ WebKit.dll!mtx_do_lock(_Mtx_internal_imp_t * * mtx, const xtime * target) Line 67 C++ WebKit.dll!std::_Mtx_lockX(_Mtx_internal_imp_t * * _Mtx) Line 68 C++ WebKit.dll!std::_Mutex_base::lock() Line 42 C++ WebKit.dll!std::lock_guard<std::mutex>::lock_guard<std::mutex>(std::mutex & _Mtx) Line 184 C++ > WebKit.dll!WTF::HashTable<WebCore::ProtectionSpace,WTF::KeyValuePair<WebCore::ProtectionSpace,WebCore::Credential>,WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::ProtectionSpace,WebCore::Credential> >,WebCore::ProtectionSpaceHash,WTF::HashMap<WebCore::ProtectionSpace,WebCore::Credential,WebCore::ProtectionSpaceHash,WTF::HashTraits<WebCore::ProtectionSpace>,WTF::HashTraits<WebCore::Credential> >::KeyValuePairTraits,WTF::HashTraits<WebCore::ProtectionSpace> >::invalidateIterators() Line 1292 C++ WebKit.dll!WTF::HashTable<WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64,WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64,WTF::IdentityExtractor,WTF::ListHashSetNodeHashFunctions<WTF::PtrHash<WebCore::RenderBox * __ptr64> >,WTF::HashTraits<WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64>,WTF::HashTraits<WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64> >::~HashTable<WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64,WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64,WTF::IdentityExtractor,WTF::ListHashSetNodeHashFunctions<WTF::PtrHash<WebCore::RenderBox * __ptr64> >,WTF::HashTraits<WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64>,WTF::HashTraits<WTF::ListHashSetNode<WebCore::RenderBox * __ptr64,16> * __ptr64> >() Line 352 C++ [External Code] The TestWebKitAPI program has proceeded as follows: WebCoreLayoutUnit. LayoutUnitInt LayoutUnitFloat LayoutUnitRounding LayoutUnitMultiplication LayoutUnitDivision LayoutUnitCeil LayoutUnitFloor WebViewDestruction. NoInitWithFrame CloseWithoutInitWithFrame WebViewDestructionWithHostWindow. CloseWithoutDestroyViewWindow DestroyViewWindowWithoutClose CloseThenDestroyViewWindow DestroyViewWindowThenClose DestroyHostWindow DestroyHostWindowThenClose CloseThenDestroyHostWindow RetainPtr. AdoptCF RetainPtrHashing. HashSet HashMapKey HashMapValue WTF. Checked_int8_t Checked_int16_t Checked_int32_t Checked_uint32_t Checked_int64_t Checked_uint64_t Lrint clampToIntLong clampToIntLongLong clampToIntegerFloat clampToIntegerDouble clampToFloat clampToUnsignedLong clampToUnsignedLongLong MediaTime SaturatedArithmeticAddition SaturatedArithmeticSubtraction StringHasher StringHasher_addCharacter StringHasher_addCharacters StringHasher_addCharactersAssumingAligned StringHasher_computeHash StringHasher_computeHashAndMaskTop8Bits StringHasher_hashMemory StringOperators FunctionalTest. Basic UnaryBind BinaryBind MemberFunctionBind MemberFunctionBindRefDeref RefCountedStorage WTF_HashMap. HashTableIteratorComparison DoubleHashCollisions MoveOnlyValues MoveOnlyKeys InitializerList EfficientGetter OwnPtrKey OwnPtrKey_FindUsingRawPointer OwnPtrKey_ContainsUsingRawPointer OwnPtrKey_GetUsingRawPointer OwnPtrKey_RemoveUsingRawPointer OwnPtrKey_TakeUsingRawPointer UniquePtrKey UniquePtrKey_CustomDeleter UniquePtrKey_FindUsingRawPointer UniquePtrKey_ContainsUsingRawPointer UniquePtrKey_GetUsingRawPointer UniquePtrKey_RemoveUsingRawPointer UniquePtrKey_TakeUsingRawPointer WTF_MD5. Computation WTF_Ref. Basic Assignment ReturnValue WTF_RefPtr. Basic AssignPassRefToRefPtr Adopt Assignment Swap ReleaseNonNull Release ReturnValue WTF_SHA1. Computation WTF_Vector. Basic Iterator OverloadedOperatorAmpersand AppendLast InitializerList Reverse ReverseIterator MoveOnly_UncheckedAppend MoveOnly_Append MoveOnly_Insert MoveOnly_TakeLast VectorOfVectorsOfVectorsInlineCapacitySwap