summaryrefslogtreecommitdiffstats
path: root/meta-multimedia/recipes-multimedia/libcamera
diff options
context:
space:
mode:
authorMarkus Volk <f_L_K@t-online.de>2023-04-01 17:46:08 +0200
committerKhem Raj <raj.khem@gmail.com>2023-04-01 08:55:06 -0700
commit17180ae0d2b3b01d0cea024ce9091966e818fc2c (patch)
treeb8ea169c9511a5900cc5c377ab453a1c987ae2f4 /meta-multimedia/recipes-multimedia/libcamera
parentfb3430b8f3be218aca30c6d7f3001ef7774c9028 (diff)
downloadmeta-openembedded-17180ae0d2b3b01d0cea024ce9091966e818fc2c.tar.gz
libcamera: re-introduce fix for gcc-13
Signed-off-by: Markus Volk <f_L_K@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-multimedia/recipes-multimedia/libcamera')
-rw-r--r--meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch44
-rw-r--r--meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb5
2 files changed, 48 insertions, 1 deletions
diff --git a/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch b/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch
new file mode 100644
index 000000000..55a5977a7
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch
@@ -0,0 +1,44 @@
1From 2eaffc9ac8b47c354404075761fe8f76fad0ced4 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 24 Jan 2023 01:18:25 -0800
4Subject: [PATCH] file_sink.cpp: Avoid dangling-reference
5
6Fixes following errors with gcc-13
7
8../git/src/cam/file_sink.cpp:92:45: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
9 92 | const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
10 | ^~~~
11../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)'
12 92 | const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
13 | ^
14cc1plus: all warnings being treated as errors
15
16Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2023-January/036575.html]
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18
19---
20 src/apps/cam/file_sink.cpp | 8 ++++----
21 1 file changed, 4 insertions(+), 4 deletions(-)
22
23diff --git a/src/apps/cam/file_sink.cpp b/src/apps/cam/file_sink.cpp
24index b32aad24..9f4c5648 100644
25--- a/src/apps/cam/file_sink.cpp
26+++ b/src/apps/cam/file_sink.cpp
27@@ -114,13 +114,13 @@ void FileSink::writeBuffer(const Stream *stream, FrameBuffer *buffer,
28 }
29
30 for (unsigned int i = 0; i < buffer->planes().size(); ++i) {
31- const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
32+ unsigned int bytesused = buffer->metadata().planes()[i].bytesused;
33
34 Span<uint8_t> data = image->data(i);
35- unsigned int length = std::min<unsigned int>(meta.bytesused, data.size());
36+ unsigned int length = std::min<unsigned int>(bytesused, data.size());
37
38- if (meta.bytesused > data.size())
39- std::cerr << "payload size " << meta.bytesused
40+ if (bytesused > data.size())
41+ std::cerr << "payload size " << bytesused
42 << " larger than plane size " << data.size()
43 << std::endl;
44
diff --git a/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb b/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb
index cbcc33aa4..12d42991e 100644
--- a/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb
+++ b/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb
@@ -8,7 +8,10 @@ LIC_FILES_CHKSUM = "\
8 file://LICENSES/LGPL-2.1-or-later.txt;md5=2a4f4fd2128ea2f65047ee63fbca9f68 \ 8 file://LICENSES/LGPL-2.1-or-later.txt;md5=2a4f4fd2128ea2f65047ee63fbca9f68 \
9" 9"
10 10
11SRC_URI = "git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master" 11SRC_URI = " \
12 git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master \
13 file://0001-file_sink.cpp-Avoid-dangling-reference.patch \
14"
12 15
13SRCREV = "6cf637eb253a68edebe59505bea55435fafb00cd" 16SRCREV = "6cf637eb253a68edebe59505bea55435fafb00cd"
14 17