diff options
author | Elias Naur <mail@eliasnaur.com> | 2024-01-22 08:33:10 -0500 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2024-01-23 02:21:39 +0200 |
commit | 0dc737d3e31112973c9286eb7775b8f730352a75 (patch) | |
tree | 356bc51d7e78f78eda11b6760be9afe39c8fbe68 | |
parent | 484c86ac6569363e539ad2729409ece4f161b802 (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.cpp | 1 |
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); |