diff options
author | David Plowman <david.plowman@raspberrypi.com> | 2020-11-23 07:38:02 +0000 |
---|---|---|
committer | Kieran Bingham <kieran.bingham@ideasonboard.com> | 2020-11-23 14:24:40 +0000 |
commit | 393f05a9a8044dba26251ba5a4b0827b714cd15f (patch) | |
tree | 6ad31da9e41ac150dcd8a03200d795adbf87815d | |
parent | 2fb5b298da8b965afb4cecbe17cbb24975e9f4db (diff) |
libcamera: src: ipa: raspberrypi: agc: Fix uninitialised members in Agc constructor
Use memset in the constructor for embedded structures, it is tidier
and initialises everything. We use the initialiser list for other
members.
Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
Acked-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r-- | src/ipa/raspberrypi/controller/rpi/agc.cpp | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/ipa/raspberrypi/controller/rpi/agc.cpp b/src/ipa/raspberrypi/controller/rpi/agc.cpp index 2533727e..d7d37055 100644 --- a/src/ipa/raspberrypi/controller/rpi/agc.cpp +++ b/src/ipa/raspberrypi/controller/rpi/agc.cpp @@ -153,16 +153,15 @@ void AgcConfig::Read(boost::property_tree::ptree const ¶ms) Agc::Agc(Controller *controller) : AgcAlgorithm(controller), metering_mode_(nullptr), exposure_mode_(nullptr), constraint_mode_(nullptr), - frame_count_(0), lock_count_(0) -{ - ev_ = status_.ev = 1.0; - flicker_period_ = status_.flicker_period = 0.0; - fixed_shutter_ = status_.fixed_shutter = 0; - fixed_analogue_gain_ = status_.fixed_analogue_gain = 0.0; - // set to zero initially, so we can tell it's not been calculated - status_.total_exposure_value = 0.0; - status_.target_exposure_value = 0.0; - status_.locked = false; + frame_count_(0), lock_count_(0), + ev_(1.0), flicker_period_(0.0), + fixed_shutter_(0), fixed_analogue_gain_(0.0) +{ + memset(&awb_, 0, sizeof(awb_)); + // Setting status_.total_exposure_value_ to zero initially tells us + // it's not been calculated yet (i.e. Process hasn't yet run). + memset(&status_, 0, sizeof(status_)); + status_.ev = ev_; } char const *Agc::Name() const |