summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElias Naur <mail@eliasnaur.com>2024-01-22 08:33:10 -0500
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-01-23 02:21:39 +0200
commit0dc737d3e31112973c9286eb7775b8f730352a75 (patch)
tree356bc51d7e78f78eda11b6760be9afe39c8fbe68
parent484c86ac6569363e539ad2729409ece4f161b802 (diff)
pipeline: rpi: Always initialize the embedded buffer in tryRunPipeline
Vc4CameraData::findMatchBuffers() may return successfully with a null embedded buffer, in which case the embedded buffer id would be left uninitialized. Without this change, libcamera v0.2.0 usually crashes for me with an assertion error: ipa_base.cpp:397 assertion "it != buffers_.end()" failed in prepareIsp() Signed-off-by: Elias Naur <mail@eliasnaur.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--src/libcamera/pipeline/rpi/vc4/vc4.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libcamera/pipeline/rpi/vc4/vc4.cpp b/src/libcamera/pipeline/rpi/vc4/vc4.cpp
index 26102ea7..a52f0e7a 100644
--- a/src/libcamera/pipeline/rpi/vc4/vc4.cpp
+++ b/src/libcamera/pipeline/rpi/vc4/vc4.cpp
@@ -945,6 +945,7 @@ void Vc4CameraData::tryRunPipeline()
params.requestControls = request->controls();
params.ipaContext = request->sequence();
params.delayContext = bayerFrame.delayContext;
+ params.buffers.embedded = 0;
if (embeddedBuffer) {
unsigned int embeddedId = unicam_[Unicam::Embedded].getBufferId(embeddedBuffer);