diff options
Diffstat (limited to 'src/libcamera/pipeline/vimc.cpp')
-rw-r--r-- | src/libcamera/pipeline/vimc.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/libcamera/pipeline/vimc.cpp b/src/libcamera/pipeline/vimc.cpp index f7f82edc..6a424411 100644 --- a/src/libcamera/pipeline/vimc.cpp +++ b/src/libcamera/pipeline/vimc.cpp @@ -411,7 +411,9 @@ int VimcCameraData::init(MediaDevice *media) return -ENODEV; /* Initialise the supported controls. */ - const V4L2ControlInfoMap &controls = sensor_->controls(); + const ControlInfoMap &controls = sensor_->controls(); + ControlInfoMap::Map ctrls; + for (const auto &ctrl : controls) { const ControlRange &range = ctrl.second; const ControlId *id; @@ -430,11 +432,12 @@ int VimcCameraData::init(MediaDevice *media) continue; } - controlInfo_.emplace(std::piecewise_construct, - std::forward_as_tuple(id), - std::forward_as_tuple(range)); + ctrls.emplace(std::piecewise_construct, + std::forward_as_tuple(id), + std::forward_as_tuple(range)); } + controlInfo_ = std::move(ctrls); return 0; } |