From 6124449cc40ae2f16c8226e4fb43275e54d73dd4 Mon Sep 17 00:00:00 2001 From: Xiaosheng An <36487580+ONLYA@users.noreply.github.com> Date: Wed, 4 Mar 2026 11:09:21 +0000 Subject: [PATCH] Don't overwrite request controls for libcamera 0.7 Fix #47 Follows https://github.com/raspberrypi/rpicam-apps/commit/5bf5f80e7674cefd668e2f55614c65588cea7dd9 --- src/libcamera_app.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/libcamera_app.cpp b/src/libcamera_app.cpp index 9c5d677..bc2eadb 100644 --- a/src/libcamera_app.cpp +++ b/src/libcamera_app.cpp @@ -331,7 +331,12 @@ void LibcameraApp::queueRequest(CompletedRequest *completed_request) { std::lock_guard lock(control_mutex_); +#if LIBCAMERA_VERSION_MINOR < 7 request->controls() = std::move(controls_); +#else + request->controls().merge(controls_, ControlList::MergePolicy::OverwriteExisting); + controls_.clear(); +#endif//LIBCAMERA_VERSION_MINOR } if (camera_->queueRequest(request) < 0)