libcamera: camera: Return -EINVAL if any stream is null while configure()
Fail and return the Camera::configure() operation if any of the stream turns out to be a nullptr even after the PipelineHandler handler seems to have configured the config successfully. This prevents a null-dereference below in the loop. Reported-by: Coverity CID=279069 Signed-off-by: Umang Jain <email@uajain.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
committed by
Kieran Bingham
parent
3706b716eb
commit
a69a8ffb02
@@ -777,9 +777,12 @@ int Camera::configure(CameraConfiguration *config)
|
||||
p_->activeStreams_.clear();
|
||||
for (const StreamConfiguration &cfg : *config) {
|
||||
Stream *stream = cfg.stream();
|
||||
if (!stream)
|
||||
if (!stream) {
|
||||
LOG(Camera, Fatal)
|
||||
<< "Pipeline handler failed to update stream configuration";
|
||||
p_->activeStreams_.clear();
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
stream->configuration_ = cfg;
|
||||
p_->activeStreams_.insert(stream);
|
||||
|
||||
Reference in New Issue
Block a user