[libcamera-devel] [PATCH] test: controls: control_list: Add status check

Jacopo Mondi jacopo at jmondi.org
Fri Nov 22 15:03:46 CET 2019


Since commit:
fac471e812a9 ("test: Extract CameraTest class out of camera tests to libtest")
the control_list is a subclass of CameraTest, and the status returned by
the base class init() operation should be inspected to avoid accessing
uninitialized fields during the run() operation execution.

If the VIMC test module is not loaded, executing the test results in a
segfault. Fix this by adding the init() operation where to status_ flag
is checked for errors.

Fixes: fac471e812a9 ("test: Extract CameraTest class out of camera tests to libtest")
Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
---
 test/controls/control_list.cpp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/test/controls/control_list.cpp b/test/controls/control_list.cpp
index 4d212abd09e6..5374c6f99f80 100644
--- a/test/controls/control_list.cpp
+++ b/test/controls/control_list.cpp
@@ -29,7 +29,12 @@ public:
 	}
 
 protected:
-	int run()
+	int init() override
+	{
+		return status_;
+	}
+
+	int run() override
 	{
 		CameraControlValidator validator(camera_.get());
 		ControlList list(controls::controls, &validator);
-- 
2.23.0



More information about the libcamera-devel mailing list