Kaydet (Commit) 108bd861 authored tarafından Michael Stahl's avatar Michael Stahl

jpeg-turbo: upgrade to release 1.5.2

* jpeg-turbo.limits.patch.1, jpeg-turbo.arm_build.patch.1:
    drop these, merged upstream

Change-Id: I755c0216af8ebe93ae9ba5e227fb880c572169c4
Reviewed-on: https://gerrit.libreoffice.org/42248Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMichael Stahl <mstahl@redhat.com>
üst e8d370e8
......@@ -117,8 +117,8 @@ export JFREEREPORT_LIBXML_SHA256SUM := 7d2797fe9f79a77009721e3f14fa4a1dec17a6d70
export JFREEREPORT_LIBXML_TARBALL := ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip
export JFREEREPORT_SAC_SHA256SUM := 085f2112c51fa8c1783fac12fbd452650596415121348393bb51f0f7e85a9045
export JFREEREPORT_SAC_TARBALL := 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip
export JPEG_TURBO_SHA256SUM := 41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c
export JPEG_TURBO_TARBALL := libjpeg-turbo-1.5.1.tar.gz
export JPEG_TURBO_SHA256SUM := 9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528
export JPEG_TURBO_TARBALL := libjpeg-turbo-1.5.2.tar.gz
export LANGTAGREG_SHA256SUM := d6a97fc8da5ae54d867e7f1b65ffb51e816cadd11714e45fc23ee0abf81a51ab
export LANGTAGREG_TARBALL := language-subtag-registry-2017-08-15.tar.bz2
export LANGUAGETOOL_SHA256SUM := 48c87e41636783bba438b65fd895821e369ed139e1465fac654323ad93c5a82d
......
......@@ -16,9 +16,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,jpeg-turbo,0))
$(eval $(call gb_UnpackedTarball_add_patches,jpeg-turbo,\
external/jpeg-turbo/jpeg-turbo.build.patch.1 \
$(if $(filter WNT,$(OS)),external/jpeg-turbo/jpeg-turbo.win_build.patch.1) \
external/jpeg-turbo/jpeg-turbo.arm_build.patch.1 \
external/jpeg-turbo/ubsan.patch \
external/jpeg-turbo/jpeg-turbo.limits.patch.1 \
external/jpeg-turbo/jpeg-turbo.iOS.patch.1 \
))
......
diff -ur jpeg.org/Makefile.am jpeg/Makefile.am
--- jpeg.org/jmemmgr.c 2017-03-15 14:29:29.286587049 +0000
+++ jpeg/jmemmgr.c 2017-03-15 14:31:21.096378506 +0000
@@ -33,6 +33,7 @@
#include "jpeglib.h"
#include "jmemsys.h" /* import the system-dependent declarations */
#include <stdint.h>
+#include <limits.h>
#ifndef NO_GETENV
#ifndef HAVE_STDLIB_H /* <stdlib.h> should declare getenv() */
From da2a27ef056a0179cbd80f9146e58b89403d9933 Mon Sep 17 00:00:00 2001
From: DRC <information@libjpeg-turbo.org>
Date: Sat, 18 Mar 2017 16:15:14 -0500
Subject: [PATCH] Honor max_memory_to_use/JPEGMEM/-maxmemory
This re-introduces a feature of the obsolete system-specific libjpeg
memory managers-- namely the ability to limit the amount of main memory
used by the library during decompression or multi-pass compression.
This is mainly beneficial for two reasons:
- Works around a 2 GB limit in libFuzzer
- Allows security-sensitive applications to set a memory limit for the
JPEG decoder so as to work around the progressive JPEG exploit
(LJT-01-004) described here:
http://www.libjpeg-turbo.org/pmwiki/uploads/About/TwoIssueswiththeJPEGStandard.pdf
This commit also removes obsolete documentation regarding the MS-DOS
memory manager (which itself was removed long ago) and changes the
documentation of the -maxmemory switch and JPEGMEM environment variable
to reflect the fact that backing stores are never used in libjpeg-turbo.
Inspired by:
https://github.com/caolanm/libjpeg-turbo/commit/066fee2e7d6834f24838bc1896aa38ca77209e3c
Closes #143
---
ChangeLog.md | 15 +++++++++++++++
cjpeg.1 | 4 ++--
djpeg.1 | 4 ++--
jmemnobs.c | 16 +++++++++++-----
jpegtran.1 | 4 ++--
libjpeg.txt | 14 ++++++--------
structure.txt | 24 +++++++++++-------------
usage.txt | 35 +++++------------------------------
8 files changed, 54 insertions(+), 62 deletions(-)
diff --git a/jmemnobs.c b/jmemnobs.c
index 5797198..ac12afa 100644
--- a/jmemnobs.c
+++ b/jmemnobs.c
@@ -3,8 +3,8 @@
*
* This file was part of the Independent JPEG Group's software:
* Copyright (C) 1992-1996, Thomas G. Lane.
- * It was modified by The libjpeg-turbo Project to include only code and
- * information relevant to libjpeg-turbo.
+ * libjpeg-turbo Modifications:
+ * Copyright (C) 2017, D. R. Commander.
* For conditions of distribution and use, see the accompanying README.ijg
* file.
*
@@ -15,7 +15,6 @@
* This is very portable in the sense that it'll compile on almost anything,
* but you'd better have lots of main memory (or virtual memory) if you want
* to process big images.
- * Note that the max_memory_to_use option is ignored by this implementation.
*/
#define JPEG_INTERNALS
@@ -66,14 +65,21 @@ jpeg_free_large (j_common_ptr cinfo, void *object, size_t sizeofobject)
/*
* This routine computes the total memory space available for allocation.
- * Here we always say, "we got all you want bud!"
*/
GLOBAL(size_t)
jpeg_mem_available (j_common_ptr cinfo, size_t min_bytes_needed,
size_t max_bytes_needed, size_t already_allocated)
{
- return max_bytes_needed;
+ if (cinfo->mem->max_memory_to_use) {
+ if (cinfo->mem->max_memory_to_use > already_allocated)
+ return cinfo->mem->max_memory_to_use - already_allocated;
+ else
+ return 0;
+ } else {
+ /* Here we always say, "we got all you want bud!" */
+ return max_bytes_needed;
+ }
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment