Message ID | 20250721104622.1550908-2-barnabas.pocze@ideasonboard.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
Hi Barnabás, Thank you for the patch! On Mon, 2025-07-21 at 12:46 +0200, Barnabás Pőcze wrote: > `ControlId::isArray()` and `ControlValue::isArray()` disagree > in the case of strings. Fix it by setting the static size of a > string to `libcamera::dynamic_extent` to denote a dynamically > sized array-like value. > > One unfortunate side effect of this change is that if there were > string controls (there are none at the moment), then `cam` would > display them with an extra `Size: n` annotation. > > Bug: https://bugs.libcamera.org/show_bug.cgi?id=255 > Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> > Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> > --- > include/libcamera/controls.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/libcamera/controls.h > b/include/libcamera/controls.h > index 2ae4ec3d4..b170e30cb 100644 > --- a/include/libcamera/controls.h > +++ b/include/libcamera/controls.h > @@ -98,7 +98,7 @@ struct control_type<float> { > template<> > struct control_type<std::string> { > static constexpr ControlType value = ControlTypeString; > - static constexpr std::size_t size = 0; > + static constexpr std::size_t size = > libcamera::dynamic_extent; Reviewed-by: Isaac Scott <isaac.scott@ideasonboard.com> > }; > > template<> Best wishes, Isaac
diff --git a/include/libcamera/controls.h b/include/libcamera/controls.h index 2ae4ec3d4..b170e30cb 100644 --- a/include/libcamera/controls.h +++ b/include/libcamera/controls.h @@ -98,7 +98,7 @@ struct control_type<float> { template<> struct control_type<std::string> { static constexpr ControlType value = ControlTypeString; - static constexpr std::size_t size = 0; + static constexpr std::size_t size = libcamera::dynamic_extent; }; template<>