diff --git a/src/apps/cam/camera_session.cpp b/src/apps/cam/camera_session.cpp
index 17444a217b..ce8ee354f0 100644
--- a/src/apps/cam/camera_session.cpp
+++ b/src/apps/cam/camera_session.cpp
@@ -542,11 +542,8 @@ void CameraSession::processRequest(Request *request)
 	 * If the frame sink holds on the request, we'll requeue it later in the
 	 * complete handler.
 	 */
-	if (!requeue)
-		return;
-
-	request->reuse(Request::ReuseBuffers);
-	queueRequest(request);
+	if (requeue)
+		sinkRelease(request);
 }
 
 void CameraSession::sinkRelease(Request *request)
