summaryrefslogtreecommitdiffstats
path: root/src/plugins/gstreamer/camerabin
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/gstreamer/camerabin')
-rw-r--r--src/plugins/gstreamer/camerabin/camerabincontrol.cpp2
-rw-r--r--src/plugins/gstreamer/camerabin/camerabinimagecapture.cpp4
2 files changed, 2 insertions, 4 deletions
diff --git a/src/plugins/gstreamer/camerabin/camerabincontrol.cpp b/src/plugins/gstreamer/camerabin/camerabincontrol.cpp
index a34315b8a..fdf3ff4ac 100644
--- a/src/plugins/gstreamer/camerabin/camerabincontrol.cpp
+++ b/src/plugins/gstreamer/camerabin/camerabincontrol.cpp
@@ -121,7 +121,7 @@ void CameraBinControl::setState(QCamera::State state)
//special case for stopping the camera while it's busy,
//it should be delayed until the camera is idle
- if (state == QCamera::LoadedState &&
+ if ((state == QCamera::LoadedState || state == QCamera::UnloadedState) &&
m_session->status() == QCamera::ActiveStatus &&
m_session->isBusy()) {
#ifdef CAMEABIN_DEBUG
diff --git a/src/plugins/gstreamer/camerabin/camerabinimagecapture.cpp b/src/plugins/gstreamer/camerabin/camerabinimagecapture.cpp
index 29d7743ed..52ec75f44 100644
--- a/src/plugins/gstreamer/camerabin/camerabinimagecapture.cpp
+++ b/src/plugins/gstreamer/camerabin/camerabinimagecapture.cpp
@@ -149,9 +149,7 @@ gboolean CameraBinImageCapture::encoderEventProbe(
tags[QMediaMetaData::FNumber] = extendedTags.value("capturing-focal-ratio");
tags[QMediaMetaData::ExposureMode] = extendedTags.value("capturing-exposure-mode");
- QMapIterator<QString, QVariant> i(tags);
- while (i.hasNext()) {
- i.next();
+ for (auto i = tags.cbegin(), end = tags.cend(); i != end; ++i) {
if (i.value().isValid()) {
QMetaObject::invokeMethod(self, "imageMetadataAvailable",
Qt::QueuedConnection,