diff options
author | Yoann Lopes <yoann.lopes@theqtcompany.com> | 2016-07-05 14:07:28 +0200 |
---|---|---|
committer | Yoann Lopes <yoann.lopes@qt.io> | 2016-07-05 13:57:19 +0000 |
commit | 7fb7f278fff2c407f8c0fe8165c60a934f95cd91 (patch) | |
tree | 4cb5d062f09f08db49cb6c98a33cf50252804e5c /src/plugins | |
parent | fa91fc211c788305de930d355c1c81725f829789 (diff) | |
download | qtmultimedia-7fb7f278fff2c407f8c0fe8165c60a934f95cd91.tar.gz |
DirectShow: fix deadlock in VideoSurfaceFilter
When the DirectShow graph is done being built, there's no need to wake
up any blocking calls on the main thread since setting a source is done
asynchronously anyway.
This could cause synchronous operations (like stopping or changing the
video output) to end prematurely if called while a source was still
being loaded, in turn causing the deadlock.
Task-number: QTBUG-54504
Change-Id: I4f534e637bfca6d3020a3bc28725c8c7042941d5
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/directshow/player/directshowplayerservice.cpp | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/plugins/directshow/player/directshowplayerservice.cpp b/src/plugins/directshow/player/directshowplayerservice.cpp index 57f100b9c..f7510316a 100644 --- a/src/plugins/directshow/player/directshowplayerservice.cpp +++ b/src/plugins/directshow/player/directshowplayerservice.cpp @@ -535,8 +535,6 @@ void DirectShowPlayerService::doRender(QMutexLocker *locker) m_executedTasks |= Render; } - - m_loop->wake(); } void DirectShowPlayerService::doFinalizeLoad(QMutexLocker *locker) |