[Webkit-unassigned] [Bug 265008] New: [MSE] CrashTracer: com.apple.WebKit.GPU at com.apple.WebCore: std::__1::pair<std::__1::__tree_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::Medi......
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Nov 16 22:09:45 PST 2023
https://bugs.webkit.org/show_bug.cgi?id=265008
Bug ID: 265008
Summary: [MSE] CrashTracer: com.apple.WebKit.GPU at
com.apple.WebCore:
std::__1::pair<std::__1::__tree_iterator<std::__1::__v
alue_type<std::__1::pair<WTF::MediaTime,
WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample,
WTF::RawPtrTraits<WebCore::Medi......
Product: WebKit
Version: WebKit Nightly Build
Hardware: Unspecified
OS: Unspecified
Status: NEW
Severity: Normal
Priority: P2
Component: Media
Assignee: webkit-unassigned at lists.webkit.org
Reporter: jean-yves.avenard at apple.com
crashtrace:
```
5 unsigned int std::__1::__cxx_atomic_fetch_add[abi:v160006]<unsigned int>(std::__1::__cxx_atomic_base_impl<unsigned int>*, unsigned int, std::__1::memory_order) <==
5 std::__1::__atomic_base<unsigned int, true>::fetch_add[abi:v160006](unsigned int, std::__1::memory_order)
5 std::__1::__atomic_base<unsigned int, true>::operator++[abi:v160006]()
5 WTF::ThreadSafeRefCountedBase::ref() const
5 WTF::DefaultRefDerefTraits<WebCore::MediaSample>::refIfNotNull(WebCore::MediaSample*)
5 WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>::RefPtr(WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>> const&)
5 WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>::RefPtr(WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>> const&)
5 std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>::pair(std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>::pair(std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>* std::__1::construct_at[abi:v160006]<std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>*>(std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>*, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 void std::__1::allocator_traits<WTF::FastAllocator<std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>>>::construct[abi:v160006]<std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&, void, void>(WTF::FastAllocator<std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>>&, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>*, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 std::__1::unique_ptr<std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>, std::__1::__tree_node_destructor<WTF::FastAllocator<std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>>>> std::__1::__tree<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__map_value_compare<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::less<std::__1::pair<WTF::MediaTime, WTF::MediaTime>>, true>, WTF::FastAllocator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>>>::__construct_node<std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&>(std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 std::__1::pair<std::__1::__tree_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>, bool> std::__1::__tree<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__map_value_compare<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::less<std::__1::pair<WTF::MediaTime, WTF::MediaTime>>, true>, WTF::FastAllocator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>>>::__emplace_hint_unique_key_args<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&>(std::__1::__tree_const_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>, std::__1::pair<WTF::MediaTime, WTF::MediaTime> const&, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 std::__1::__tree<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__map_value_compare<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::less<std::__1::pair<WTF::MediaTime, WTF::MediaTime>>, true>, WTF::FastAllocator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>>>::__insert_unique[abi:v160006](std::__1::__tree_const_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>> const&)
5 std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>> std::__1::map<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>, std::__1::less<std::__1::pair<WTF::MediaTime, WTF::MediaTime>>, WTF::FastAllocator<std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>>>::insert[abi:v160006]<std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>&, void>(std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>>, std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>&)
5 void std::__1::map<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>, std::__1::less<std::__1::pair<WTF::MediaTime, WTF::MediaTime>>, WTF::FastAllocator<std::__1::pair<std::__1::pair<WTF::MediaTime, WTF::MediaTime> const, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>>>::insert[abi:v160006]<std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>>>(std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>>, std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, std::__1::__tree_node<std::__1::__value_type<std::__1::pair<WTF::MediaTime, WTF::MediaTime>, WTF::RefPtr<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>, WTF::DefaultRefDerefTraits<WebCore::MediaSample>>>, void*>*, long>>)
5 WebCore::SourceBufferPrivate::processMediaSample(WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>&&)
5 WebCore::SourceBufferPrivate::processMediaSamplesOperation(WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&&)
5 WebCore::SourceBufferPrivate::processPendingOperations()::$_12::operator()(WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&&) const
5 decltype(std::declval<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>()(std::declval<WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>())) std::__1::__invoke[abi:v160006]<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>(WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>&&, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&&)
5 decltype(auto) std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>::operator()[abi:v160006]<std::__1::__variant_detail::__alt<2ul, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>>(std::__1::__variant_detail::__alt<2ul, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>&&) const
5 decltype(std::declval<std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>>()(std::declval<std::__1::__variant_detail::__alt<2ul, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>>())) std::__1::__invoke[abi:v160006]<std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>, std::__1::__variant_detail::__alt<2ul, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>>(std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>&&, std::__1::__variant_detail::__alt<2ul, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>&&)
5 decltype(auto) std::__1::__variant_detail::__visitation::__base::__dispatcher<2ul>::__dispatch[abi:v160006]<std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>&&, std::__1::__variant_detail::__base<(std::__1::__variant_detail::_Trait)1, WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>&&>(std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>&&, std::__1::__variant_detail::__base<(std::__1::__variant_detail::_Trait)1, WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>&&)
5 decltype(auto) std::__1::__variant_detail::__visitation::__base::__visit_alt[abi:v160006]<std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>, std::__1::__variant_detail::__impl<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>>(std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>&&, std::__1::__variant_detail::__impl<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>&&)
5 decltype(auto) std::__1::__variant_detail::__visitation::__variant::__visit_alt[abi:v160006]<std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>, std::__1::variant<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>>(std::__1::__variant_detail::__visitation::__variant::__value_visitor<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>>&&, std::__1::variant<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>&&)
5 decltype(auto) std::__1::__variant_detail::__visitation::__variant::__visit_value[abi:v160006]<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>, std::__1::variant<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>>(WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>&&, std::__1::variant<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>&&)
5 decltype(auto) std::__1::visit[abi:v160006]<WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>, std::__1::variant<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>, void>(WTF::Visitor<WebCore::SourceBufferPrivate::processPendingOperations()::$_11, WebCore::SourceBufferPrivate::processPendingOperations()::$_12, WebCore::SourceBufferPrivate::processPendingOperations()::$_13, WebCore::SourceBufferPrivate::processPendingOperations()::$_14, WebCore::SourceBufferPrivate::processPendingOperations()::$_15, WebCore::SourceBufferPrivate::processPendingOperations()::$_16>&&, std::__1::variant<WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>, WebCore::SourceBufferPrivate::InitOperation, WTF::Vector<WTF::Ref<WebCore::MediaSample, WTF::RawPtrTraits<WebCore::MediaSample>>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::SourceBufferPrivate::ResetParserOperation, WebCore::SourceBufferPrivate::AppendCompletedOperation, WebCore::SourceBufferPrivate::ErrorOperation>&&)
5 WebCore::SourceBufferPrivate::processPendingOperations()
5 WebCore::SourceBufferPrivate::appendCompleted(bool, bool, WTF::Function<void ()>&&)
5 WebCore::SourceBufferPrivateAVFObjC::appendCompleted()
5 WebCore::SourceBufferPrivateAVFObjC::appendInternal(WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>&&)::$_18::operator()()::'lambda'()::operator()()::'lambda'()::operator()() const
5 WTF::Detail::CallableWrapper<WebCore::SourceBufferPrivateAVFObjC::appendInternal(WTF::Ref<WebCore::SharedBuffer, WTF::RawPtrTraits<WebCore::SharedBuffer>>&&)::$_18::operator()()::'lambda'()::operator()()::'lambda'(), void>::call()
5 WTF::Function<void ()>::operator()() const
5 WTF::RunLoop::performWork()
5 WTF::RunLoop::performWork(void*)
5 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
5 __CFRunLoopDoSource0
5 __CFRunLoopDoSources0
5 __CFRunLoopRun
5 CFRunLoopRunSpecific
5 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
5 -[NSRunLoop(NSRunLoop) run]
5 _xpc_objc_main
5 _xpc_main
5 xpc_main
5 WebKit::XPCServiceMain(int, char const**)
5 start
```
While this signature is new (processOperations was added in March 2023), where the crash occurs isn’t
```
if (range.first != trackBuffer.samples().presentationOrder().end())
erasedSamples.addRange(range.first, range.second);
```
It looks that when this code ran, the track buffer content was modified, which can happen under two conditions:
1- SourceBufferPrivate::removeCodedFrames code run before an append operation completed
2- SourceBufferPrivate::memoryPressure happened while an append got fixed.
1 typically is very unlikely to happen, as the only possible scenario would be for the web player to do something like sourceBuffer.appendBuffer(); /* some time later */ sourceBuffer.abort(); sourceBuffer.removeCodedFrames(); . While the likelihood is low, it is possible.
2- is however quite likely and I noticed this problem while working on rdar://118429088 (somehow the bit about fly-by fix got lost during my rebase). It was possible for the memoryPressure operation to run while the appendBuffer operation was ongoing. In rdar://118429088 this was fixed. memoryPressure is added as a task to the queue and will occur once the append has completed.
So I believe this bug is primarily fixed by bug 264854
--
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/20231117/b392f16a/attachment-0001.htm>
More information about the webkit-unassigned
mailing list