summaryrefslogtreecommitdiffstats
path: root/package/libv4l/0005-libv4lconvert-only-expose-jpeg_mem_-protoypes-when-J.patch
blob: 1868fd30453feedaee232aefb7ca008e0ddac87b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
From d468d1bba973999f2f1103ebaf7df5c8440a5499 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Thu, 21 Jan 2016 10:22:16 +0100
Subject: [PATCH] libv4lconvert: only expose jpeg_mem_*() protoypes when
 JPEG_LIB_VERSION < 80

The jpeg_memsrcdest.c file implements jpeg_mem_src() and
jpeg_mem_dest() when JPEG_LIB_VERSION < 80 in order to provide those
functions to libv4lconvert when the libjpeg library being used is too
old.

However, the jpeg_memsrcdest.h file exposes the prototypes of those
functions unconditionally. Until now, the prototype was matching the
one of the functions exposed by libjpeg (when JPEG_LIB_VERSION >= 80),
so there was no problem.

But since the release of libjpeg 9b (in January 2016), they changed
the second argument of jpeg_mem_src() from "unsigned char *" to "const
unsigned char*". Therefore, there are two prototypes for the
jpeg_mem_src() function: one from libjpeg, one from libv4l, and they
conflict with each other.

To resolve this situation, this patch modifies jpeg_memsrcdest.h to
only expose the prototypes when libv4l is implementing the functions
(i.e when JPEG_LIB_VERSION < 80). When JPEG_LIB_VERSION >= 80, the
prototypes will come from <jpeglib.h>.

Patch upstream at:
http://git.linuxtv.org/v4l-utils.git/commit/?id=0b33f4c87cb26644ea662455acbc1649858b151f.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 lib/libv4lconvert/jpeg_memsrcdest.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/lib/libv4lconvert/jpeg_memsrcdest.h b/lib/libv4lconvert/jpeg_memsrcdest.h
index e971182..28a6477 100644
--- a/lib/libv4lconvert/jpeg_memsrcdest.h
+++ b/lib/libv4lconvert/jpeg_memsrcdest.h
@@ -1,5 +1,7 @@
 #include <jpeglib.h>
 
+#if JPEG_LIB_VERSION < 80
+
 void
 jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
 	unsigned long bufsize);
@@ -7,3 +9,5 @@ jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
 void
 jpeg_mem_dest (j_compress_ptr cinfo, unsigned char ** outbuffer,
 	unsigned long * outsize);
+
+#endif
-- 
2.6.4

OpenPOWER on IntegriCloud