[PATCH] libcamera: mali-c55: Fix error paths in ::init()
Daniel Scally
dan.scally at ideasonboard.com
Tue Jan 21 14:00:37 CET 2025
In the ::init() function there are two places that return values they
shouldn't; the ret variable is returned after checking a pointer is
not null instead of an explicit -ENODEV and later the boolean value
false is returned on failure instead of the error value returned by
V4L2Subdevice::open() - fix both problems.
Signed-off-by: Daniel Scally <dan.scally at ideasonboard.com>
---
src/libcamera/pipeline/mali-c55/mali-c55.cpp | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/libcamera/pipeline/mali-c55/mali-c55.cpp b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
index 5abd6b20..6aa2f2d9 100644
--- a/src/libcamera/pipeline/mali-c55/mali-c55.cpp
+++ b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
@@ -159,15 +159,16 @@ int MaliC55CameraData::init()
*/
sensor_ = CameraSensorFactoryBase::create(entity_);
if (!sensor_)
- return ret;
+ return -ENODEV;
const MediaPad *sourcePad = entity_->getPadByIndex(0);
MediaEntity *csiEntity = sourcePad->links()[0]->sink()->entity();
csi_ = std::make_unique<V4L2Subdevice>(csiEntity);
- if (csi_->open()) {
+ ret = csi_->open();
+ if (ret) {
LOG(MaliC55, Error) << "Failed to open CSI-2 subdevice";
- return false;
+ return ret;
}
return 0;
--
2.34.1
More information about the libcamera-devel
mailing list