summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-07-15 22:58:50 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-07-22 17:13:31 +0300
commit11298f3d47f6a600c63428d660c00a69c32f4b9f (patch)
treec92d60f3665b67866e1aa89b826a54a29fb6b20a /src
parent812e5a946fb74609376f2c72972ec8c86a84a19e (diff)
cam: stream_options: Use OptionValue::empty() to test if option is set
The roles() and updateConfiguration() functions check if the OptStream OptionValue they receive is empty by first casting it to an array. To prepare for the toArray() function not allowing such a cast when the option value is empty, test if the option value is empty instead. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src')
-rw-r--r--src/cam/stream_options.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/cam/stream_options.cpp b/src/cam/stream_options.cpp
index b90dbb97..150bd27c 100644
--- a/src/cam/stream_options.cpp
+++ b/src/cam/stream_options.cpp
@@ -40,12 +40,12 @@ KeyValueParser::Options StreamKeyValueParser::parse(const char *arguments)
StreamRoles StreamKeyValueParser::roles(const OptionValue &values)
{
- const std::vector<OptionValue> &streamParameters = values.toArray();
-
/* If no configuration values to examine default to viewfinder. */
- if (streamParameters.empty())
+ if (values.empty())
return { StreamRole::Viewfinder };
+ const std::vector<OptionValue> &streamParameters = values.toArray();
+
StreamRoles roles;
for (auto const &value : streamParameters) {
StreamRole role;
@@ -63,17 +63,17 @@ StreamRoles StreamKeyValueParser::roles(const OptionValue &values)
int StreamKeyValueParser::updateConfiguration(CameraConfiguration *config,
const OptionValue &values)
{
- const std::vector<OptionValue> &streamParameters = values.toArray();
-
if (!config) {
std::cerr << "No configuration provided" << std::endl;
return -EINVAL;
}
/* If no configuration values nothing to do. */
- if (!streamParameters.size())
+ if (values.empty())
return 0;
+ const std::vector<OptionValue> &streamParameters = values.toArray();
+
if (config->size() != streamParameters.size()) {
std::cerr
<< "Number of streams in configuration "