[libcamera-devel] [PATCH 3/3] Documentation: application-developer: Add camera detection check

Laurent Pinchart laurent.pinchart at ideasonboard.com
Sun Sep 26 23:21:08 CEST 2021


The simple-cam application has a check to ensure that at least one
camera is present before attempting to access the first camera, to avoid
a crash. Update the application developer's guide accordingly.

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 Documentation/guides/application-developer.rst | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/Documentation/guides/application-developer.rst b/Documentation/guides/application-developer.rst
index 41a7d88369be..11d3df15825b 100644
--- a/Documentation/guides/application-developer.rst
+++ b/Documentation/guides/application-developer.rst
@@ -109,9 +109,16 @@ the Camera Manager reports as available to applications.
 Camera devices are stored by the CameraManager in a list accessible by index, or
 can be retrieved by name through the ``CameraManager::get()`` function. The
 code below retrieves the name of the first available camera and gets the camera
-by name from the Camera Manager.
+by name from the Camera Manager, after making sure that at least one camera is
+available.
 
 .. code:: cpp
+   if (cm->cameras().empty()) {
+       std::cout << "No cameras were identified on the system."
+                 << std::endl;
+       cm->stop();
+       return EXIT_FAILURE;
+   }
 
    std::string cameraId = cm->cameras()[0]->id();
    camera = cm->get(cameraId);
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list