libcamera: controls: initialise control info to ControlTypeNone by default

The default ControlInfo constructor allows partially initialising the
min/max/def values. Uninitialised values are assigned to 0 by default.
This implicit initialisation makes it impossible to distinguish between
an uninitialised and an explicitly 0-initialised ControlValue.

Default construct the ControlValue in the ControlInfo default contructor to
explicitly represent uninitialised values by the ControlTypeNone type.

Signed-off-by: Christian Rauch <Rauch.Christian@gmx.de>
Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
This commit is contained in:
Christian Rauch
2022-09-03 23:33:30 +02:00
committed by Paul Elder
parent cbc2be34ed
commit 5fd18af233
2 changed files with 5 additions and 5 deletions
+3 -3
View File
@@ -268,9 +268,9 @@ private:
class ControlInfo
{
public:
explicit ControlInfo(const ControlValue &min = 0,
const ControlValue &max = 0,
const ControlValue &def = 0);
explicit ControlInfo(const ControlValue &min = {},
const ControlValue &max = {},
const ControlValue &def = {});
explicit ControlInfo(Span<const ControlValue> values,
const ControlValue &def = {});
explicit ControlInfo(std::set<bool> values, bool def);