summaryrefslogtreecommitdiff
path: root/package/kodi/0007-exif-Fix-for-out-of-memory-errors-with-large-numbers.patch
blob: 9b0e47d0741d80f2db91da9101e5dcced17d3f8a (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
From f63563615e357b7d794a38e1d37276c325d1466f Mon Sep 17 00:00:00 2001
From: popcornmix <popcornmix@gmail.com>
Date: Sat, 7 May 2016 13:47:42 +0100
Subject: [PATCH] [exif] Fix for out-of-memory errors with large numbers
 of jpegs

This reverts part of https://github.com/xbmc/xbmc/pull/7472

Basically the commit made the 4 comments in the exif block increase
from 2K to 64K each, so you now need 256K per photo.

When opening a folder exif information for all photos is extracted.
So, for a folder of 5000 jpegs, 1.2GB of RAM is needed just for
the comments.

As a 64K comment string is of no use to kodi, just truncate them to 2K
like we used to.

See:
http://trac.kodi.tv/ticket/16193
http://forum.kodi.tv/showthread.php?tid=251908

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
(backported from upstream commit in master branch:
 https://github.com/xbmc/xbmc/commit/f63563615e357b7d794a38e1d37276c325d1466f)
---
 lib/libexif/libexif.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/libexif/libexif.h b/lib/libexif/libexif.h
index aa8da07..519ac30 100644
--- a/lib/libexif/libexif.h
+++ b/lib/libexif/libexif.h
@@ -81,7 +81,7 @@ typedef struct {
 #define EXIF_COMMENT_CHARSET_UNICODE    3 // Exif: Unicode (UTF-16)
 #define EXIF_COMMENT_CHARSET_JIS        4 // Exif: JIS X208-1990
 
-#define MAX_COMMENT 65533 // 2 bytes - 2 for the length param
+#define MAX_COMMENT 2000
 #define MAX_DATE_COPIES 10
 
 typedef struct {
-- 
2.8.1