[Webkit-unassigned] [Bug 198281] [WinCairo][MediaFoundation] video/audio elements don't work in WebKit2

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 29 22:20:24 PDT 2019


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

Fujii Hironori <Hironori.Fujii at sony.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #370919|0                           |1
        is obsolete|                            |

--- Comment #3 from Fujii Hironori <Hironori.Fujii at sony.com> ---
Created attachment 370921

  --> https://bugs.webkit.org/attachment.cgi?id=370921&action=review

WIP patch

Sometimes observing crashing when destructing MediaPlayerPrivateMediaFoundation.

> oleaut32.dll!00007fff2479bd7b()	Unknown
> oleaut32.dll!00007fff2479c0b1()	Unknown
> combase.dll!00007fff24f53026()	Unknown
> mfcore.dll!00007ffeef5cc3b1()	Unknown
> mfcore.dll!00007ffeef5cc1b4()	Unknown
> mfcore.dll!00007ffeef616e14()	Unknown
> mfcore.dll!00007ffeef6010a7()	Unknown
> mfcore.dll!00007ffeef5c8142()	Unknown
> mfcore.dll!00007ffeef5e5bd6()	Unknown
> mfcore.dll!00007ffeef5e87f4()	Unknown
> mfcore.dll!00007ffeef60e8d0()	Unknown
> WebKit2.dll!COMPtr<IMFTopology>::~COMPtr() Line 63	C++
> WebKit2.dll!WebCore::MediaPlayerPrivateMediaFoundation::~MediaPlayerPrivateMediaFoundation() Line 108	C++
> WebKit2.dll!WebCore::MediaPlayerPrivateMediaFoundation::~MediaPlayerPrivateMediaFoundation() Line 104	C++
> [External Code]	
> WebKit2.dll!WebCore::MediaPlayer::~MediaPlayer() Line 366	C++
> WebKit2.dll!WebCore::MediaPlayer::~MediaPlayer() Line 364	C++
> WebKit2.dll!WTF::RefCounted<WebCore::MediaPlayer>::deref() Line 145	C++
> WebKit2.dll!WTF::derefIfNotNull<WebCore::MediaPlayer>(WebCore::MediaPlayer * ptr) Line 45	C++
> WebKit2.dll!WTF::RefPtr<WebCore::MediaPlayer,WTF::DumbPtrTraits<WebCore::MediaPlayer> >::operator=(void *) Line 155	C++
> WebKit2.dll!WebCore::HTMLMediaElement::clearMediaPlayer() Line 5659	C++
> WebKit2.dll!WebCore::HTMLMediaElement::userCancelledLoad() Line 5582	C++
> WebKit2.dll!WebCore::HTMLMediaElement::stopWithoutDestroyingMediaPlayer() Line 5710	C++
> WebKit2.dll!WebCore::HTMLMediaElement::stop() Line 5757	C++
> WebKit2.dll!WebCore::ScriptExecutionContext::stopActiveDOMObjects::<unnamed-tag>::operator()<WebCore::ActiveDOMObject>(WebCore::ActiveDOMObject & activeDOMObject) Line 322	C++
> WebKit2.dll!WTF::Detail::CallableWrapper<`lambda at ..\..\Source\WebCore\dom/ScriptExecutionContext.cpp:320:28',WebCore::ScriptExecutionContext::ShouldContinue,WebCore::ActiveDOMObject &>::call(WebCore::ActiveDOMObject & in) Line 52	C++
> WebKit2.dll!WTF::Function<WebCore::ScriptExecutionContext::ShouldContinue (WebCore::ActiveDOMObject &)>::operator()(WebCore::ActiveDOMObject & in) Line 79	C++
> WebKit2.dll!WebCore::ScriptExecutionContext::forEachActiveDOMObject(const WTF::Function<WebCore::ScriptExecutionContext::ShouldContinue (WebCore::ActiveDOMObject &)> & apply) Line 271	C++
> WebKit2.dll!WebCore::ScriptExecutionContext::stopActiveDOMObjects() Line 320	C++
> WebKit2.dll!WebCore::Document::stopActiveDOMObjects() Line 2637	C++
> WebKit2.dll!WebCore::Document::prepareForDestruction() Line 2508	C++
> WebKit2.dll!WebCore::Frame::setView(WTF::RefPtr<WebCore::FrameView,WTF::DumbPtrTraits<WebCore::FrameView> > && view) Line 233	C++
> WebKit2.dll!WebCore::Frame::createView(const WebCore::IntSize & viewportSize, const WTF::Optional<WebCore::Color> & backgroundColor, const WebCore::IntSize & fixedLayoutSize, const WebCore::IntRect & fixedVisibleContentRect, bool useFixedLayout, WebCore::ScrollbarMode horizontalScrollbarMode, bool horizontalLock, WebCore::ScrollbarMode verticalScrollbarMode, bool verticalLock) Line 798	C++
> WebKit2.dll!WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage() Line 1483	C++
> WebKit2.dll!WebCore::FrameLoader::transitionToCommitted(WebCore::CachedPage * cachedPage) Line 2188	C++
> WebKit2.dll!WebCore::FrameLoader::commitProvisionalLoad() Line 2016	C++
> WebKit2.dll!WebCore::DocumentLoader::commitIfReady() Line 368	C++
> WebKit2.dll!WebCore::DocumentLoader::commitLoad(const char * data, int length) Line 997	C++
> WebKit2.dll!WebCore::DocumentLoader::dataReceived(const char * data, int length) Line 1149	C++
> WebKit2.dll!WebCore::DocumentLoader::dataReceived(WebCore::CachedResource & resource, const char * data, int length) Line 1122	C++
> WebKit2.dll!WebCore::CachedRawResource::notifyClientsDataWasReceived(const char * data, unsigned int length) Line 135	C++
> WebKit2.dll!WebCore::CachedRawResource::updateBuffer(WebCore::SharedBuffer & data) Line 74	C++
> WebKit2.dll!WebCore::SubresourceLoader::didReceiveDataOrBuffer(const char * data, int length, WTF::RefPtr<WebCore::SharedBuffer,WTF::DumbPtrTraits<WebCore::SharedBuffer> > && buffer, __int64 encodedDataLength, WebCore::DataPayloadType dataPayloadType) Line 476	C++
> WebKit2.dll!WebCore::SubresourceLoader::didReceiveData(const char * data, unsigned int length, __int64 encodedDataLength, WebCore::DataPayloadType dataPayloadType) Line 444	C++
> WebKit2.dll!WebKit::WebResourceLoader::didReceiveData(const IPC::DataReference & data, __int64 encodedDataLength) Line 155	C++
> WebKit2.dll!IPC::callMemberFunctionImpl<WebKit::WebResourceLoader,void (WebKit::WebResourceLoader::*)(const IPC::DataReference &, long long),std::tuple<IPC::DataReference,long long>,0,1>(WebKit::WebResourceLoader * object, void(WebKit::WebResourceLoader::*)(const IPC::DataReference &, __int64) function, std::tuple<IPC::DataReference,long long> && args, std::integer_sequence<unsigned long long,0,1>) Line 42	C++
> WebKit2.dll!IPC::callMemberFunction<WebKit::WebResourceLoader,void (WebKit::WebResourceLoader::*)(const IPC::DataReference &, long long),std::tuple<IPC::DataReference,long long>,std::integer_sequence<unsigned long long,0,1> >(std::tuple<IPC::DataReference,long long> && args, WebKit::WebResourceLoader * object, void(WebKit::WebResourceLoader::*)(const IPC::DataReference &, __int64) function) Line 47	C++
> WebKit2.dll!IPC::handleMessage<Messages::WebResourceLoader::DidReceiveData,WebKit::WebResourceLoader,void (WebKit::WebResourceLoader::*)(const IPC::DataReference &, long long)>(IPC::Decoder & decoder, WebKit::WebResourceLoader * object, void(WebKit::WebResourceLoader::*)(const IPC::DataReference &, __int64) function) Line 121	C++
> WebKit2.dll!WebKit::WebResourceLoader::didReceiveWebResourceLoaderMessage(IPC::Connection & connection, IPC::Decoder & decoder) Line 61	C++
> WebKit2.dll!WebKit::NetworkProcessConnection::didReceiveMessage(IPC::Connection & connection, IPC::Decoder & decoder) Line 84	C++
> WebKit2.dll!IPC::Connection::dispatchMessage(IPC::Decoder & decoder) Line 984	C++
> WebKit2.dll!IPC::Connection::dispatchMessage(std::unique_ptr<IPC::Decoder,std::default_delete<IPC::Decoder> > message) Line 1012	C++
> WebKit2.dll!IPC::Connection::dispatchOneIncomingMessage() Line 1080	C++
> WebKit2.dll!IPC::Connection::enqueueIncomingMessage::<unnamed-tag>::operator()() Line 962	C++
> WebKit2.dll!WTF::Detail::CallableWrapper<`lambda at ..\..\Source\WebKit\Platform\IPC\Connection.cpp:957:30',void>::call() Line 52	C++
> WTF.dll!WTF::Function<void ()>::operator()() Line 79	C++
> WTF.dll!WTF::RunLoop::performWork() Line 107	C++
> WTF.dll!WTF::RunLoop::wndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 57	C++
> WTF.dll!WTF::RunLoop::RunLoopWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 39	C++
> [External Code]	
> WTF.dll!WTF::RunLoop::run() Line 73	C++
> WebKit2.dll!WebKit::AuxiliaryProcessMain<WebKit::WebProcess,WebKit::WebProcessMain>(int argc, char * * argv) Line 67	C++
> WebKit2.dll!WebKit::WebProcessMainWin(int argc, char * * argv) Line 45	C++
> WebKitWebProcess.exe!main(int argc, char * * argv) Line 33	C++
> [External Code]	

This is becuase IMFTopology is releasing after MFShutdown was called.
I don't know why WK1 doesn't have this issue.

-- 
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/20190530/d4aace4b/attachment-0001.html>


More information about the webkit-unassigned mailing list