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<>
