Age | Commit message (Collapse) | Author |
|
Update Chromium's copy of libjpeg-turbo to the latest upstream
release (v2.0.90) and re-apply our local changes documented in
README.chromium.
Cherry-pick two additional changes from upstream to fix bugs found
by fuzzers:
1) https://github.com/libjpeg-turbo/libjpeg-turbo/commit/ccaba5d7894ecfb5a8f11e48d3f86e1f14d5a469
2) https://github.com/libjpeg-turbo/libjpeg-turbo/commit/c7ca521bc85b57d41d3ad4963c13fc0100481084
Significant changes provided by this update:
1) A large performance boost to JPEG encoding due to an improved
Huffman encoding implementation.
2) The complete removal of Arm Neon assembly code. This allows Arm's
control-flow integrity security features (Armv8.3-A Pointer
Authentication and Armv8.5-A Branch Target Identification) to be
switched on with the appropriate compiler flags.
Bug: 922430
Bug: b/135180511
Bug: 919548, 1145581
Change-Id: I319fcdc55b3fd5b219425c07a4e4a03587f4e06d
|
|
Update Chromium's copy of libjpeg-turbo to the latest stable upstream
release (v2.0.5) and reapply our local changes documented in
README.chromium. This update addresses three CVEs - CVE-2018-19664,
CVE-2018-20330, CVE-2018-20330 - that do not affect Chromium. The
fixes do, however, satisfy UBSan - allowing Chromium's libjpeg-turbo
to be used in AOSP.
Cherry-pick one additional change[1] from upstream to prevent AArch64
Windows builds from failing.
[1] https://github.com/libjpeg-turbo/libjpeg-turbo/commit/6ee5d5f568fda1a7c6a49dd8995f2d89866ee42d
Bug: 922430
Bug: https://issuetracker.google.com/135180511
Change-Id: I146fe82f7a016ce393eb0d37aebe0b7c2492a9da
|
|
In order to apply some performance updates from ARM, we need to update
libjpeg-turbo. These performance updates have yielded a 50% speedup on
some devices.
This CL updates our copy of libjpeg-turbo to v2.0.1 and re-applies our
local patches. This patch also deletes some extra files which were not
being used locally.
Update our local patch that was applied to fix http://crbug.com/398235
(https://codereview.appspot.com/229430043/). The original patch
incorrectly removed "& 0xFF" which limited an array index to within
that array's bounds (effectively reverting
https://github.com/libjpeg-turbo/libjpeg-turbo/commit/fa1d18385d904d530b4aec83ab7757a33397de6e).
Restore the mask, making the array access safe and fixing a graphical
glitch which would otherwise be introduced by this change.
Bug:922430
Change-Id: I3860fdb424deecf7a17818ed09a640e632e71f8d
|
|
(Duplicate of https://codereview.chromium.org/1939823002/ for landing.)
TBR=noel@chromium.org,thakis@chromium.org
BUG=608347, 398235, 591927
Review URL: https://codereview.chromium.org/1953443002 .
|
|
https://codereview.chromium.org/1271803002/
"jpeg_skip_scanlines() API, a subset decoding optimization
aimed at Android, was submitted upstream r1582. Pull that
change, and sundry fixes, into the Chromium repo.
This new API is targetted at Android devices, not Chrome,
and should have no affect on JPEG decode behavior or perf
of Chrome.
Chrome uses suspending data source JPEG decoding, and the
new API does not support such sources. Adding support for
suspending data sources is a future TODO, should the need
arise (refer to skbug.com/4036)."
BUG=515694
BUG=468914
R=agable@chromium.org
Review URL: https://codereview.chromium.org/1291463002 .
|
|
jpeg_skip_scanlines() API, a subset decoding optimization
aimed at Android, was submitted upstream r1582. Pull that
change, and sundry fixes, into the Chromium repo.
This new API is targetted at Android devices, not Chrome,
and should have no affect on JPEG decode behavior or perf
of Chrome.
Chrome uses suspending data source JPEG decoding, and the
new API does not support such sources. Adding support for
suspending data sources is a future TODO, should the need
arise (refer to skbug.com/4036).
BUG=515694
BUG=468914
patch from issue 256280043 at patchset 50001 (http://crrev.com/256280043#ps50001)
R=agable@chromium.org
Review URL: https://codereview.chromium.org/1271803002 .
|
|
Make the fast path Huffman decoder fallback to the slow decoding path if
the Huffman decoding bit sentinel > 16, this to match libjpeg6b decoding
by reproducing the exact behavior of jpeg_huff_decode().
When this sentinel check is missing (see bug), libjpeg_turbo can produce
two (or more) different decoded images for the same input data depending
on how transport systems (eg., networks) packetize the data for delivery
to end-systems, web browsers for example.
Note: libjpeg6b produces the same decoded image, irrespective of how the
input data is placed in network packets. This fix makes libjpeg_turbo do
the same for compat with libjpeg6b.
TBR=darin@chromium.org
BUG=chromium:398235
Review URL: https://codereview.appspot.com/229430043
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@295003 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
Remove google.jdmarker.patch, since the fixes for CVE-2013-6629
and CVE-2013-6630 are upstream most everywhere now [1]. Version
number to 1.3.1 (config.h, jconfig.h).
README.chromium: "Fixed valgrind error" patch was upstreamed in
r839 http://sourceforge.net/p/libjpeg-turbo/code/839. The r1188
cherry-pick was put in config.h, say that.
[1] http://seclists.org/fulldisclosure/2013/Nov/83
TBR=darin@chromium.org
BUG=258723, 299835
Review URL: https://codereview.appspot.com/87110044
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@263594 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
This change updates our copy of libjpeg-turbo to r829.
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/10386084
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@136524 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
This change just reapply warning fixes that I forgot reapplying when I updated libjpeg-turbo to 1.1.90.
BUG=none
TEST=build libjpeg-turbo without warnings.
Review URL: http://codereview.chromium.org/7633058
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@96750 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
This change updates our copy of libjpeg-turbo to 1.1.90 (r677), which supports ARM NEON.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7554002
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@95196 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
BUG=none
TESTED=builds with higher warning levels on windows
Review URL: http://codereview.chromium.org/7331010
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@91819 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
adds further protections against invalid Huffman codes.
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/6334053
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@73588 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|
|
This change lands the original libjpeg-turbo 1.0.1 (source files only) and NASM 2.09.2 (required for assembling .asm files on Windows) to "deps/third_party". I will send more changes to land its build files and patches to integrate it into Chrome.
BUG=48789
TEST=none
Review URL: http://codereview.chromium.org/4134011
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@64575 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
|