diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/multimedia/configure.json | 2 | ||||
-rw-r--r-- | src/multimedia/playback/qmediaplayer.cpp | 3 | ||||
-rw-r--r-- | src/plugins/directshow/camera/dscamerasession.cpp | 5 |
3 files changed, 5 insertions, 5 deletions
diff --git a/src/multimedia/configure.json b/src/multimedia/configure.json index ca6c426ba..6d56af5ed 100644 --- a/src/multimedia/configure.json +++ b/src/multimedia/configure.json @@ -231,7 +231,7 @@ }, "gpu_vivante": { "label": "Vivante GPU", - "condition": "features.opengles2 && tests.gpu_vivante", + "condition": "features.gui && features.opengles2 && tests.gpu_vivante", "output": [ "privateFeature" ] }, "resourcepolicy": { diff --git a/src/multimedia/playback/qmediaplayer.cpp b/src/multimedia/playback/qmediaplayer.cpp index 3308537a9..81d525ea8 100644 --- a/src/multimedia/playback/qmediaplayer.cpp +++ b/src/multimedia/playback/qmediaplayer.cpp @@ -648,6 +648,9 @@ QMediaPlayer::~QMediaPlayer() Q_D(QMediaPlayer); d->disconnectPlaylist(); + // Disconnect everything to prevent notifying + // when a receiver is already destroyed. + disconnect(); if (d->service) { if (d->control) diff --git a/src/plugins/directshow/camera/dscamerasession.cpp b/src/plugins/directshow/camera/dscamerasession.cpp index d23b7f1e2..5ab9f67d8 100644 --- a/src/plugins/directshow/camera/dscamerasession.cpp +++ b/src/plugins/directshow/camera/dscamerasession.cpp @@ -439,9 +439,6 @@ bool DSCameraSession::unload() setStatus(QCamera::UnloadingStatus); - m_previewSampleGrabber->deleteLater(); - m_previewSampleGrabber = nullptr; - m_needsHorizontalMirroring = false; m_supportedViewfinderSettings.clear(); m_supportedFormats.clear(); @@ -808,7 +805,7 @@ bool DSCameraSession::createFilterGraph() // Sample grabber filter if (!m_previewSampleGrabber) { - m_previewSampleGrabber = new DirectShowSampleGrabber; + m_previewSampleGrabber = new DirectShowSampleGrabber(this); connect(m_previewSampleGrabber, &DirectShowSampleGrabber::bufferAvailable, this, &DSCameraSession::onFrameAvailable, Qt::DirectConnection); } |