WebKit Bugzilla
Attachment 370722 Details for
Bug 198290
: [WinCairo][MediaFoundation] Assertion failure in MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-198290-20190528194349.patch (text/plain), 4.48 KB, created by
Fujii Hironori
on 2019-05-28 03:43:50 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Fujii Hironori
Created:
2019-05-28 03:43:50 PDT
Size:
4.48 KB
patch
obsolete
>Subversion Revision: 245808 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 2bf80b38a48ede850b34e1158848bb74c19638ec..a86199fec3149faf9d66e350119037914a023886 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,38 @@ >+2019-05-28 Fujii Hironori <Hironori.Fujii@sony.com> >+ >+ [WinCairo][MediaFoundation] Assertion failure in MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample >+ https://bugs.webkit.org/show_bug.cgi?id=198290 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Covered by existing tests. >+ >+ * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp: >+ (WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample): >+ Call clear() of m_memSurface before assigning new value. >+ >+2019-05-28 Fujii Hironori <Hironori.Fujii@sony.com> >+ >+ [WinCairo] ASSERTION FAILED: !m_preparingToPlay in MediaPlayerPrivateMediaFoundation::prepareToPlay >+ https://bugs.webkit.org/show_bug.cgi?id=190747 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ HTMLMediaElement::prepareToPlay had a assertion ensuring that it >+ was not called twice. However, it was called twice. The first from >+ HTMLMediaElement::load, the second from >+ MediaPlayerPrivateMediaFoundation::onTopologySet. >+ >+ prepareToPlay started loading. And, loading should be started >+ after onTopologySet is called back. >+ >+ Covered by existing tests. >+ >+ * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp: >+ (WebCore::MediaPlayerPrivateMediaFoundation::onTopologySet): Moved code from prepareToPlay. >+ (WebCore::MediaPlayerPrivateMediaFoundation::prepareToPlay): Deleted and moved the code to onTopologySet. >+ * platform/graphics/win/MediaPlayerPrivateMediaFoundation.h: Removed prepareToPlay declaration. >+ > 2019-05-27 Carlos Garcia Campos <cgarcia@igalia.com> > > [GTK] Use WPEBackend-fdo for accelerating compositing in Wayland instead of the nested compositor >diff --git a/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp b/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp >index efb155f482b3277dbb321bc99d7ab939208b66f1..00b0d0884fc282b1c7f226ecd6ae507a0a6f85ee 100644 >--- a/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp >+++ b/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp >@@ -185,15 +185,6 @@ void MediaPlayerPrivateMediaFoundation::cancelLoad() > notImplemented(); > } > >-void MediaPlayerPrivateMediaFoundation::prepareToPlay() >-{ >- // We call startSession() to start buffering video data. >- // When we have received enough data, we pause, so that we don't actually start the playback. >- ASSERT(m_paused); >- ASSERT(!m_preparingToPlay); >- m_preparingToPlay = startSession(); >-} >- > void MediaPlayerPrivateMediaFoundation::play() > { > m_paused = !startSession(); >@@ -914,7 +905,11 @@ void MediaPlayerPrivateMediaFoundation::onTopologySet() > } > > // It is expected that we start buffering data from the network now. >- prepareToPlay(); >+ // We call startSession() to start buffering video data. >+ // When we have received enough data, we pause, so that we don't actually start the playback. >+ ASSERT(m_paused); >+ ASSERT(!m_preparingToPlay); >+ m_preparingToPlay = startSession(); > } > > void MediaPlayerPrivateMediaFoundation::onBufferingStarted() >@@ -2894,6 +2889,7 @@ HRESULT MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample(IMFS > D3DSURFACE_DESC desc; > if (SUCCEEDED(surface->GetDesc(&desc))) > format = desc.Format; >+ m_memSurface.clear(); > hr = m_device->CreateOffscreenPlainSurface(width, height, format, D3DPOOL_SYSTEMMEM, &m_memSurface, nullptr); > m_width = width; > m_height = height; >diff --git a/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.h b/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.h >index 385c23ec3229001172ede4e8800bd6c76d4fab7e..d85f17590206c1784fea24eb66fb8e5af0916a72 100644 >--- a/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.h >+++ b/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.h >@@ -59,8 +59,6 @@ public: > void load(const String& url) override; > void cancelLoad() override; > >- void prepareToPlay() override; >- > void play() override; > void pause() override; >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198290
:
370721
|
370722
|
370723