diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/qtmultimediaquicktools/qdeclarativevideooutput.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp b/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp index 4fc768438..3c6a6f9c5 100644 --- a/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp +++ b/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp @@ -263,17 +263,16 @@ bool QDeclarativeVideoOutput::createBackend(QMediaService *service) backendAvailable = true; } - if (!backendAvailable) { - qWarning() << Q_FUNC_INFO << "Media service has neither renderer nor window control available."; - m_backend.reset(); - } else if (!m_geometryDirty) { - m_backend->updateGeometry(); - } + if (backendAvailable) { + // Since new backend has been created needs to update its geometry. + m_geometryDirty = true; - if (m_backend) { m_backend->clearFilters(); for (int i = 0; i < m_filters.count(); ++i) m_backend->appendFilter(m_filters[i]); + } else { + qWarning() << Q_FUNC_INFO << "Media service has neither renderer nor window control available."; + m_backend.reset(); } return backendAvailable; |