[libcamera-devel] [PATCH v5 08/10] lc-compliance: Check that requests complete successfully

Nícolas F. R. A. Prado nfraprado at collabora.com
Wed Jul 7 16:42:00 CEST 2021


When a request fails to queue it is completed but with its status set to
RequestCancelled. Add a check in the requestComplete callback to make
sure that the request was completed successfully.

Signed-off-by: Nícolas F. R. A. Prado <nfraprado at collabora.com>
---

Added in v5

 src/lc-compliance/simple_capture.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/lc-compliance/simple_capture.cpp b/src/lc-compliance/simple_capture.cpp
index 5aecc1ab0afc..7bdc8abc4c0b 100644
--- a/src/lc-compliance/simple_capture.cpp
+++ b/src/lc-compliance/simple_capture.cpp
@@ -175,6 +175,7 @@ int SimpleCaptureBalanced::queueRequest(Request *request)
 
 void SimpleCaptureBalanced::requestComplete(Request *request)
 {
+	EXPECT_EQ(request->status(), Request::Status::RequestComplete) << "Request didn't complete successfully";
 	if (captureCompleted())
 		return;
 
@@ -210,6 +211,7 @@ void SimpleCaptureUnbalanced::capture(unsigned int numRequests)
 
 void SimpleCaptureUnbalanced::requestComplete(Request *request)
 {
+	EXPECT_EQ(request->status(), Request::Status::RequestComplete) << "Request didn't complete successfully";
 	if (captureCompleted())
 		return;
 
@@ -245,5 +247,6 @@ void SimpleCaptureOverflow::capture()
 
 void SimpleCaptureOverflow::requestComplete([[maybe_unused]] Request *request)
 {
+	EXPECT_EQ(request->status(), Request::Status::RequestComplete) << "Request didn't complete successfully";
 	captureCompleted();
 }
-- 
2.32.0



More information about the libcamera-devel mailing list