diff --git a/src/plugins/directshow/camera/directshowcamerazoomcontrol.cpp b/src/plugins/directshow/camera/directshowcamerazoomcontrol.cpp
index 209cb5d96faaa22642564a4e6ef898142e0030c4..079976e157e6f136b9cde2a01fe8a3117f8b17e9 100644
--- a/src/plugins/directshow/camera/directshowcamerazoomcontrol.cpp
+++ b/src/plugins/directshow/camera/directshowcamerazoomcontrol.cpp
@@ -176,7 +176,7 @@ void DirectShowCameraZoomControl::updateZoomValues()
     }
 
     // Check if there is a pending zoom value.
-    if (!qFuzzyCompare(m_currentOpticalZoom, m_requestedOpticalZoom))
+    if (!qFuzzyCompare(m_currentOpticalZoom, m_requestedOpticalZoom) && !qFuzzyIsNull(m_requestedOpticalZoom))
         opticalZoomToPrivate(m_requestedOpticalZoom);
 }