mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-09-29 07:25:27 +00:00
libcamera: Fix build with gcc-13
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
05ef2b6570
commit
d8381620cd
@ -0,0 +1,46 @@
|
|||||||
|
From 0e97896e6a09957f27125957d00b5150ec90b2e9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Khem Raj <raj.khem@gmail.com>
|
||||||
|
Date: Tue, 24 Jan 2023 01:18:25 -0800
|
||||||
|
Subject: [PATCH] file_sink.cpp: Avoid dangling-reference
|
||||||
|
|
||||||
|
Fixes following errors with gcc-13
|
||||||
|
|
||||||
|
../git/src/cam/file_sink.cpp:92:45: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
|
||||||
|
92 | const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
|
||||||
|
| ^~~~
|
||||||
|
../git/src/cam/file_sink.cpp:92:81: note: the temporary was destroyed at the end of the full expression '(& buffer->libcamera::FrameBuffer::metadata())->libcamera::FrameMetadata::planes().libcamera::Span<const libcamera::FrameMetadata::Plane>::operator[](i)'
|
||||||
|
92 | const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
|
||||||
|
| ^
|
||||||
|
cc1plus: all warnings being treated as errors
|
||||||
|
|
||||||
|
Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2023-January/036575.html]
|
||||||
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||||
|
---
|
||||||
|
src/cam/file_sink.cpp | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/cam/file_sink.cpp b/src/cam/file_sink.cpp
|
||||||
|
index 45213d4a..897c4b37 100644
|
||||||
|
--- a/src/cam/file_sink.cpp
|
||||||
|
+++ b/src/cam/file_sink.cpp
|
||||||
|
@@ -89,13 +89,13 @@ void FileSink::writeBuffer(const Stream *stream, FrameBuffer *buffer)
|
||||||
|
Image *image = mappedBuffers_[buffer].get();
|
||||||
|
|
||||||
|
for (unsigned int i = 0; i < buffer->planes().size(); ++i) {
|
||||||
|
- const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
|
||||||
|
+ unsigned int bytesused = buffer->metadata().planes()[i].bytesused;
|
||||||
|
|
||||||
|
Span<uint8_t> data = image->data(i);
|
||||||
|
- unsigned int length = std::min<unsigned int>(meta.bytesused, data.size());
|
||||||
|
+ unsigned int length = std::min<unsigned int>(bytesused, data.size());
|
||||||
|
|
||||||
|
- if (meta.bytesused > data.size())
|
||||||
|
- std::cerr << "payload size " << meta.bytesused
|
||||||
|
+ if (bytesused > data.size())
|
||||||
|
+ std::cerr << "payload size " << bytesused
|
||||||
|
<< " larger than plane size " << data.size()
|
||||||
|
<< std::endl;
|
||||||
|
|
||||||
|
--
|
||||||
|
2.39.1
|
||||||
|
|
||||||
@ -10,6 +10,7 @@ LIC_FILES_CHKSUM = "\
|
|||||||
|
|
||||||
SRC_URI = " \
|
SRC_URI = " \
|
||||||
git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master \
|
git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master \
|
||||||
|
file://0001-file_sink.cpp-Avoid-dangling-reference.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
SRCREV = "a83aed77df1258e469c0eb42d9cb4f1938db53f2"
|
SRCREV = "a83aed77df1258e469c0eb42d9cb4f1938db53f2"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user