summaryrefslogtreecommitdiff
path: root/src/libcamera/pipeline/ipu3
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo@jmondi.org>2020-06-28 16:36:45 +0200
committerJacopo Mondi <jacopo@jmondi.org>2020-06-29 09:35:17 +0200
commit5267ca8e0209c08ba2b022543f291985c4cfeaf5 (patch)
tree733f3bde094c20f3a33f07ed0dc540c9f1f97ab7 /src/libcamera/pipeline/ipu3
parent83d37d54666f6114527ad503ea5e80d5b9388f11 (diff)
libcamera: ipu3: Accept an empty roles list
The IPU3 pipeline handler that does not support receiving an empty list of roles at generateConfiguration() time. This contradicts the camera API which allows application to generate empty CameraConfiguration to be later manually filled. Fix this by returning an empty CameraConfiguration if the list of requested roles is empty. While at it, align the style with the other pipeline handlers. Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/libcamera/pipeline/ipu3')
-rw-r--r--src/libcamera/pipeline/ipu3/ipu3.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index ef57196c..cbf19793 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -292,14 +292,15 @@ CameraConfiguration *PipelineHandlerIPU3::generateConfiguration(Camera *camera,
const StreamRoles &roles)
{
IPU3CameraData *data = cameraData(camera);
- IPU3CameraConfiguration *config;
+ IPU3CameraConfiguration *config = new IPU3CameraConfiguration(camera, data);
std::set<Stream *> streams = {
&data->outStream_,
&data->vfStream_,
&data->rawStream_,
};
- config = new IPU3CameraConfiguration(camera, data);
+ if (roles.empty())
+ return config;
for (const StreamRole role : roles) {
StreamConfiguration cfg = {};