Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package qt6-imageformats for openSUSE:Factory checked in at 2022-04-20 16:55:36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qt6-imageformats (Old) and /work/SRC/openSUSE:Factory/.qt6-imageformats.new.1941 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-imageformats" Wed Apr 20 16:55:36 2022 rev:13 rq:970792 version:6.3.0 Changes: -------- --- /work/SRC/openSUSE:Factory/qt6-imageformats/qt6-imageformats.changes 2022-03-29 18:14:49.507096217 +0200 +++ /work/SRC/openSUSE:Factory/.qt6-imageformats.new.1941/qt6-imageformats.changes 2022-04-20 16:55:49.070538297 +0200 @@ -1,0 +2,11 @@ +Fri Apr 8 11:56:53 UTC 2022 - Christophe Giboudeaux <christo...@krop.fr> + +- Update to 6.3.0: + * https://www.qt.io/blog/qt-6.3-released + +------------------------------------------------------------------- +Tue Mar 29 12:28:32 UTC 2022 - Christophe Giboudeaux <christo...@krop.fr> + +- Update to 6.3.0-rc + +------------------------------------------------------------------- Old: ---- qtimageformats-everywhere-src-6.2.4.tar.xz New: ---- qtimageformats-everywhere-src-6.3.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qt6-imageformats.spec ++++++ --- /var/tmp/diff_new_pack.06HzEI/_old 2022-04-20 16:55:49.878539052 +0200 +++ /var/tmp/diff_new_pack.06HzEI/_new 2022-04-20 16:55:49.882539055 +0200 @@ -1,7 +1,7 @@ # # spec file for package qt6-imageformats # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,8 +16,8 @@ # -%define real_version 6.2.4 -%define short_version 6.2 +%define real_version 6.3.0 +%define short_version 6.3 %define short_name qtimageformats %define tar_name qtimageformats-everywhere-src %define tar_suffix %{nil} @@ -28,7 +28,7 @@ %endif # Name: qt6-imageformats%{?pkg_suffix} -Version: 6.2.4 +Version: 6.3.0 Release: 0 Summary: Qt 6 ImageFormat Plugins License: LGPL-3.0-only OR (GPL-2.0-only OR GPL-3.0-or-later) ++++++ qtimageformats-everywhere-src-6.2.4.tar.xz -> qtimageformats-everywhere-src-6.3.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/.QT-ENTERPRISE-LICENSE-AGREEMENT new/qtimageformats-everywhere-src-6.3.0/.QT-ENTERPRISE-LICENSE-AGREEMENT --- old/qtimageformats-everywhere-src-6.2.4/.QT-ENTERPRISE-LICENSE-AGREEMENT 2022-03-10 11:21:32.044042800 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/.QT-ENTERPRISE-LICENSE-AGREEMENT 2022-04-06 19:56:41.557723500 +0200 @@ -1,5 +1,5 @@ QT LICENSE AGREEMENT -Agreement version 4.4 +Agreement version 4.4.1 This Qt License Agreement ("Agreement") is a legal agreement for the licensing of Licensed Software (as defined below) between The Qt Company (as defined @@ -233,7 +233,7 @@ United States or a legal entity incorporated outside of the United States or having its registered office outside of the United States, The Qt Company Ltd., a Finnish company with its registered office at - Bertel Jungin aukio D3A, 02600 Espoo, Finland. + Miestentie 7, 02150 Espoo, Finland. "Third-Party Software" shall have the meaning set forth in Section 4. @@ -1054,8 +1054,8 @@ - Appendix 1: Licensed Software details - Appendix 2: Pricing - Appendix 3: Add-on Software details (optional) -- Appendix 4: Non-commercial and educational Licenses (optional) -- Appendix 5: Small business and startup Licenses (optional) +- Appendix 4: Small business and startup Licenses (optional) +- Appendix 5: Non-commercial and educational Licenses (optional) - Appendix 6: License Reporting (optional) - Appendix 7: Marketing Rights (optional) - Appendix 8: Intentionally left blank (optional) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/.cmake.conf new/qtimageformats-everywhere-src-6.3.0/.cmake.conf --- old/qtimageformats-everywhere-src-6.2.4/.cmake.conf 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/.cmake.conf 2022-04-05 16:01:27.000000000 +0200 @@ -1,2 +1,2 @@ -set(QT_REPO_MODULE_VERSION "6.2.4") -set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "") +set(QT_REPO_MODULE_VERSION "6.3.0") +set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/.qmake.conf new/qtimageformats-everywhere-src-6.3.0/.qmake.conf --- old/qtimageformats-everywhere-src-6.2.4/.qmake.conf 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/.qmake.conf 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +0,0 @@ -load(qt_build_config) - -DEFINES += QT_NO_FOREACH QT_NO_JAVA_STYLE_ITERATORS - -MODULE_VERSION = 6.2.4 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/.tag new/qtimageformats-everywhere-src-6.3.0/.tag --- old/qtimageformats-everywhere-src-6.2.4/.tag 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/.tag 2022-04-05 16:01:27.000000000 +0200 @@ -1 +1 @@ -2dd8048d64de5ca7fcc817f5afdbd5fc368dd1f0 +d759f8e42c8fc2165e0f69b57abb125c7cb4a430 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/CMakeLists.txt new/qtimageformats-everywhere-src-6.3.0/CMakeLists.txt --- old/qtimageformats-everywhere-src-6.2.4/CMakeLists.txt 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/CMakeLists.txt 2022-04-05 16:01:27.000000000 +0200 @@ -10,14 +10,6 @@ LANGUAGES CXX C ) -# special case begin -# Make sure we only use latest private CMake API, aka no compatibility wrappers. -set(QT_NO_INTERNAL_COMPATIBILITY_FUNCTIONS TRUE) - -# Make sure we use the fixed BASE argument of qt_add_resource. -set(QT_USE_FIXED_QT_ADD_RESOURCE_BASE TRUE) -# special case end - find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) # special case find_package(Qt6 ${PROJECT_VERSION} QUIET CONFIG OPTIONAL_COMPONENTS Gui) # special case if(NOT TARGET Qt::Gui) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/dependencies.yaml new/qtimageformats-everywhere-src-6.3.0/dependencies.yaml --- old/qtimageformats-everywhere-src-6.2.4/dependencies.yaml 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/dependencies.yaml 2022-04-05 16:01:27.000000000 +0200 @@ -1,4 +1,4 @@ dependencies: ../qtbase: - ref: d3b5353380797f3b67599ccebc5dc916057681e5 + ref: 9554d315aa74eaba1726405ee09117e2ebc6111f required: true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/AUTHORS new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/AUTHORS --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/AUTHORS 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/AUTHORS 2022-04-05 16:01:27.000000000 +0200 @@ -32,6 +32,7 @@ - Pascal Massimino (pascal dot massimino at gmail dot com) - Pawe?? Hajdan, Jr (phajdan dot jr at chromium dot org) - Pierre Joye (pierre dot php at gmail dot com) +- Roberto Alanis (alanisbaez at google dot com) - Sam Clegg (sbc at chromium dot org) - Scott Hancher (seh at google dot com) - Scott LaVarnway (slavarnway at google dot com) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/ChangeLog new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/ChangeLog --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/ChangeLog 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/ChangeLog 2022-04-05 16:01:27.000000000 +0200 @@ -1,7 +1,58 @@ +6db8248c libwebp: Fix VP8EncTokenLoop() progress +827a307f BMP enc: fix the transparency case +286e7fce libwebp: do not destroy jpeg codec twice on error +9195ea05 update ChangeLog (tag: v1.2.2-rc2) +4acae017 update NEWS +883f0633 man/img2webp.1: update date +567e1f44 Reword img2webp synopsis command line +f084244d anim_decode: fix alpha blending with big-endian +b217b4ff webpinfo: fix fourcc comparison w/big-endian +f035d2e4 update ChangeLog (tag: v1.2.2-rc1) +7031946a update NEWS +973390b6 bump version to 1.2.2 +abd6664f update AUTHORS +5b7e7930 Merge "add missing USE_{MSA,NEON} checks in headers" into main +02ca04c3 add missing USE_{MSA,NEON} checks in headers +e94716e2 xcframeworkbuild.sh: place headers in a subdir +c846efd8 patch-check: commit subject length check +b6f756e8 update http links +8f5cb4c1 update rfc links +8ea81561 change VP8LPredictorFunc signature to avoid reading 'left' +6b1d18c3 webpmux: fix the -bgcolor description +3368d876 Merge "webpmux: add "-set bgcolor A,R,G,B"" into main +f213abf6 webpinfo: print the number of warnings +50c97c30 webpmux: add "-set bgcolor A,R,G,B" +2c206aaf Remove CMakeLists.txt check in compile.sh +96e3dfef Merge "infra/common.sh: add shard_should_run()" into main +0e0f74b7 infra/common.sh: add shard_should_run() +35b7436a Jenkins scripts port: update shell function comments +21d24b4c webp-container-spec.txt: remove 'experimental' markers +cdcf8902 Merge "Port Jenkins script: compile" into main +dc683cde Jenkins scripts port: static analysis +0858494e Port Jenkins script: compile +c2cf6a93 Jenkins scripts port: android compilation +df0e808f presubmit: Add pylint-2.7 and .pylintrc +676c57db patch-check: shfmt +7bb7f747 patch-check: Add shellcheck +abcd1797 Reformat docstrings and imports +edaf0895 Port Jenkins scripts: compile js +b9622063 Set CheckPatchFormatted flags to fail on diffs +e23cd548 dsp.h: enable NEON w/VS2019+ ARM64 targets +3875c7de CMakeLists.txt: set minimum version to 3.7 +1a8f0d45 Have a hard-coded value for memset in TrellisQuantizeBlock. +93480160 Speed up TrellisQuantizeBlock +45eaacc9 Convert deprecated uint32 to uint32_t. +42592af8 webp,cmake: Remove unnecessary include dirs +e298e05f Add patch-check steps in PRESUBMIT.py +29148919 Merge tag 'v1.2.1' +9ce5843d update ChangeLog (tag: v1.2.1, origin/1.2.1) d9191588 fuzzer/*: normalize src/ includes +c5bc3624 fuzzer/*: normalize src/ includes 53b6f762 fix indent +d2caaba4 fix indent 731246ba update ChangeLog (tag: v1.2.1-rc2) d250f01d dsp/*: use WEBP_HAVE_* to determine Init availability +1fe31625 dsp/*: use WEBP_HAVE_* to determine Init availability 3a4d3ecd update NEWS b2bc8093 bump version to 1.2.1 e542fc7a update AUTHORS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/NEWS new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/NEWS --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/NEWS 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/NEWS 2022-04-05 16:01:27.000000000 +0200 @@ -1,3 +1,11 @@ +- 1/11/2022: version 1.2.2 + This is a binary compatible release. + * webpmux: add "-set bgcolor A,R,G,B" + * add ARM64 NEON support for MSVC builds (#539) + * fix duplicate include error in Xcode when using multiple XCFrameworks in a + project (#542) + * doc updates and bug fixes (#538, #544, #548, #550) + - 7/20/2021: version 1.2.1 This is a binary compatible release. * minor lossless encoder improvements and x86 color conversion speed up diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/README new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/README --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/README 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/README 2022-04-05 16:01:27.000000000 +0200 @@ -4,7 +4,7 @@ \__\__/\____/\_____/__/ ____ ___ / _/ / \ \ / _ \/ _/ / \_/ / / \ \ __/ \__ - \____/____/\_____/_____/____/v1.2.1 + \____/____/\_____/_____/____/v1.2.2 Description: ============ @@ -13,13 +13,13 @@ contains the library that can be used in other programs to add WebP support, as well as the command line tools 'cwebp' and 'dwebp'. -See http://developers.google.com/speed/webp +See https://developers.google.com/speed/webp The latest source tree is available at https://chromium.googlesource.com/webm/libwebp It is released under the same license as the WebM project. -See http://www.webmproject.org/license/software/ or the +See https://www.webmproject.org/license/software/ or the "COPYING" file for details. An additional intellectual property rights grant can be found in the file PATENTS. @@ -436,8 +436,8 @@ 2) (Optional) qcms (Quick Color Management System) i. Download qcms from Mozilla / Chromium: - http://hg.mozilla.org/mozilla-central/file/0e7639e3bdfb/gfx/qcms - http://src.chromium.org/viewvc/chrome/trunk/src/third_party/qcms + https://hg.mozilla.org/mozilla-central/file/0e7639e3bdfb/gfx/qcms + https://source.chromium.org/chromium/chromium/src/+/main:third_party/qcms/;drc=d4a2f8e1ed461d8fc05ed88d1ae2dc94c9773825 ii. Build and archive the source files as libqcms.a / qcms.lib iii. Update makefile.unix / Makefile.vc a) Define WEBP_HAVE_QCMS @@ -456,7 +456,7 @@ Usage: - img2webp [file-level options] [image files...] [per-frame options...] + img2webp [file_options] [[frame_options] frame_file]... File-level options (only used at the start of compression): -min_size ............ minimize size @@ -786,10 +786,10 @@ Please report all bugs to the issue tracker: https://bugs.chromium.org/p/webp Patches welcome! See this page to get started: - http://www.webmproject.org/code/contribute/submitting-patches/ + https://www.webmproject.org/code/contribute/submitting-patches/ Discuss: ======== Email: webp-disc...@webmproject.org -Web: http://groups.google.com/a/webmproject.org/group/webp-discuss +Web: https://groups.google.com/a/webmproject.org/group/webp-discuss diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/patches/0001-Fix-Windows-build-for-clang-and-neon.patch new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/patches/0001-Fix-Windows-build-for-clang-and-neon.patch --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/patches/0001-Fix-Windows-build-for-clang-and-neon.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/patches/0001-Fix-Windows-build-for-clang-and-neon.patch 2022-04-05 16:01:27.000000000 +0200 @@ -0,0 +1,37 @@ +diff --git a/src/3rdparty/libwebp/src/dsp/dsp.h b/src/3rdparty/libwebp/src/dsp/dsp.h +index c4f57e4..607b2e2 100644 +--- a/src/3rdparty/libwebp/src/dsp/dsp.h ++++ b/src/3rdparty/libwebp/src/dsp/dsp.h +@@ -14,6 +14,8 @@ + #ifndef WEBP_DSP_DSP_H_ + #define WEBP_DSP_DSP_H_ + ++#include <qglobal.h> ++ + #ifdef HAVE_CONFIG_H + #include "src/webp/config.h" + #endif +@@ -70,12 +72,12 @@ extern "C" { + + #if !defined(HAVE_CONFIG_H) + #if defined(_MSC_VER) && _MSC_VER > 1310 && \ +- (defined(_M_X64) || defined(_M_IX86)) ++ (defined(_M_X64) || defined(_M_IX86)) && !defined(__clang__) + #define WEBP_MSC_SSE2 // Visual C++ SSE2 targets + #endif + + #if defined(_MSC_VER) && _MSC_VER >= 1500 && \ +- (defined(_M_X64) || defined(_M_IX86)) ++ (defined(_M_X64) || defined(_M_IX86)) && !defined(__clang__) + #define WEBP_MSC_SSE41 // Visual C++ SSE4.1 targets + #endif + #endif +@@ -122,7 +124,7 @@ extern "C" { + // Note: ARM64 is supported in Visual Studio 2017, but requires the direct + // inclusion of arm64_neon.h; Visual Studio 2019 includes this file in + // arm_neon.h. +-#if defined(_MSC_VER) && \ ++#if defined(_MSC_VER) && !defined(__clang__) && (QT_CONFIG_neon == 1) && \ + ((_MSC_VER >= 1700 && defined(_M_ARM)) || \ + (_MSC_VER >= 1920 && defined(_M_ARM64))) + #define WEBP_USE_NEON diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/qt_attribution.json new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/qt_attribution.json --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/qt_attribution.json 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/qt_attribution.json 2022-04-05 16:01:27.000000000 +0200 @@ -6,7 +6,7 @@ "Description": "WebP is a new image format that provides lossless and lossy compression for images on the web.", "Homepage": "https://developers.google.com/speed/webp/", - "Version": "1.2.1", + "Version": "1.2.2", "License": "BSD 3-clause \"New\" or \"Revised\" License", "LicenseId": "BSD-3-Clause", "LicenseFile": "COPYING", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dec/vp8_dec.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dec/vp8_dec.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dec/vp8_dec.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dec/vp8_dec.c 2022-04-05 16:01:27.000000000 +0200 @@ -403,7 +403,7 @@ 0, 1, 4, 8, 5, 2, 3, 6, 9, 12, 13, 10, 7, 11, 14, 15 }; -// See section 13-2: http://tools.ietf.org/html/rfc6386#section-13.2 +// See section 13-2: https://datatracker.ietf.org/doc/html/rfc6386#section-13.2 static int GetLargeValue(VP8BitReader* const br, const uint8_t* const p) { int v; if (!VP8GetBit(br, p[3], "coeffs")) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dec/vp8i_dec.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dec/vp8i_dec.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dec/vp8i_dec.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dec/vp8i_dec.h 2022-04-05 16:01:27.000000000 +0200 @@ -32,7 +32,7 @@ // version numbers #define DEC_MAJ_VERSION 1 #define DEC_MIN_VERSION 2 -#define DEC_REV_VERSION 1 +#define DEC_REV_VERSION 2 // YUV-cache parameters. Cache is 32-bytes wide (= one cacheline). // Constraints are: We need to store one 16x16 block of luma samples (y), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dec/vp8l_dec.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dec/vp8l_dec.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dec/vp8l_dec.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dec/vp8l_dec.c 2022-04-05 16:01:27.000000000 +0200 @@ -84,7 +84,7 @@ // to 256 (green component values) + 24 (length prefix values) // + color_cache_size (between 0 and 2048). // All values computed for 8-bit first level lookup with Mark Adler's tool: -// http://www.hdfgroup.org/ftp/lib-external/zlib/zlib-1.2.5/examples/enough.c +// https://github.com/madler/zlib/blob/v1.2.5/examples/enough.c #define FIXED_TABLE_SIZE (630 * 3 + 410) static const uint16_t kTableSize[12] = { FIXED_TABLE_SIZE + 654, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/demux/anim_decode.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/demux/anim_decode.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/demux/anim_decode.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/demux/anim_decode.c 2022-04-05 16:01:27.000000000 +0200 @@ -23,6 +23,14 @@ #define NUM_CHANNELS 4 +// Channel extraction from a uint32_t representation of a uint8_t RGBA/BGRA +// buffer. +#ifdef WORDS_BIGENDIAN +#define CHANNEL_SHIFT(i) (24 - (i) * 8) +#else +#define CHANNEL_SHIFT(i) ((i) * 8) +#endif + typedef void (*BlendRowFunc)(uint32_t* const, const uint32_t* const, int); static void BlendPixelRowNonPremult(uint32_t* const src, const uint32_t* const dst, int num_pixels); @@ -209,35 +217,35 @@ const uint8_t dst_channel = (dst >> shift) & 0xff; const uint32_t blend_unscaled = src_channel * src_a + dst_channel * dst_a; assert(blend_unscaled < (1ULL << 32) / scale); - return (blend_unscaled * scale) >> 24; + return (blend_unscaled * scale) >> CHANNEL_SHIFT(3); } // Blend 'src' over 'dst' assuming they are NOT pre-multiplied by alpha. static uint32_t BlendPixelNonPremult(uint32_t src, uint32_t dst) { - const uint8_t src_a = (src >> 24) & 0xff; + const uint8_t src_a = (src >> CHANNEL_SHIFT(3)) & 0xff; if (src_a == 0) { return dst; } else { - const uint8_t dst_a = (dst >> 24) & 0xff; + const uint8_t dst_a = (dst >> CHANNEL_SHIFT(3)) & 0xff; // This is the approximate integer arithmetic for the actual formula: // dst_factor_a = (dst_a * (255 - src_a)) / 255. const uint8_t dst_factor_a = (dst_a * (256 - src_a)) >> 8; const uint8_t blend_a = src_a + dst_factor_a; const uint32_t scale = (1UL << 24) / blend_a; - const uint8_t blend_r = - BlendChannelNonPremult(src, src_a, dst, dst_factor_a, scale, 0); - const uint8_t blend_g = - BlendChannelNonPremult(src, src_a, dst, dst_factor_a, scale, 8); - const uint8_t blend_b = - BlendChannelNonPremult(src, src_a, dst, dst_factor_a, scale, 16); + const uint8_t blend_r = BlendChannelNonPremult( + src, src_a, dst, dst_factor_a, scale, CHANNEL_SHIFT(0)); + const uint8_t blend_g = BlendChannelNonPremult( + src, src_a, dst, dst_factor_a, scale, CHANNEL_SHIFT(1)); + const uint8_t blend_b = BlendChannelNonPremult( + src, src_a, dst, dst_factor_a, scale, CHANNEL_SHIFT(2)); assert(src_a + dst_factor_a < 256); - return (blend_r << 0) | - (blend_g << 8) | - (blend_b << 16) | - ((uint32_t)blend_a << 24); + return ((uint32_t)blend_r << CHANNEL_SHIFT(0)) | + ((uint32_t)blend_g << CHANNEL_SHIFT(1)) | + ((uint32_t)blend_b << CHANNEL_SHIFT(2)) | + ((uint32_t)blend_a << CHANNEL_SHIFT(3)); } } @@ -247,7 +255,7 @@ const uint32_t* const dst, int num_pixels) { int i; for (i = 0; i < num_pixels; ++i) { - const uint8_t src_alpha = (src[i] >> 24) & 0xff; + const uint8_t src_alpha = (src[i] >> CHANNEL_SHIFT(3)) & 0xff; if (src_alpha != 0xff) { src[i] = BlendPixelNonPremult(src[i], dst[i]); } @@ -264,7 +272,7 @@ // Blend 'src' over 'dst' assuming they are pre-multiplied by alpha. static uint32_t BlendPixelPremult(uint32_t src, uint32_t dst) { - const uint8_t src_a = (src >> 24) & 0xff; + const uint8_t src_a = (src >> CHANNEL_SHIFT(3)) & 0xff; return src + ChannelwiseMultiply(dst, 256 - src_a); } @@ -274,7 +282,7 @@ int num_pixels) { int i; for (i = 0; i < num_pixels; ++i) { - const uint8_t src_alpha = (src[i] >> 24) & 0xff; + const uint8_t src_alpha = (src[i] >> CHANNEL_SHIFT(3)) & 0xff; if (src_alpha != 0xff) { src[i] = BlendPixelPremult(src[i], dst[i]); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/demux/demux.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/demux/demux.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/demux/demux.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/demux/demux.c 2022-04-05 16:01:27.000000000 +0200 @@ -25,7 +25,7 @@ #define DMUX_MAJ_VERSION 1 #define DMUX_MIN_VERSION 2 -#define DMUX_REV_VERSION 1 +#define DMUX_REV_VERSION 2 typedef struct { size_t start_; // start location of the data diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/dsp.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/dsp.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/dsp.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/dsp.h 2022-04-05 16:01:27.000000000 +0200 @@ -14,6 +14,8 @@ #ifndef WEBP_DSP_DSP_H_ #define WEBP_DSP_DSP_H_ +#include <qglobal.h> + #ifdef HAVE_CONFIG_H #include "src/webp/config.h" #endif @@ -119,7 +121,12 @@ #define WEBP_USE_NEON #endif -#if defined(_MSC_VER) && _MSC_VER >= 1700 && defined(_M_ARM) && !defined(__clang__) +// Note: ARM64 is supported in Visual Studio 2017, but requires the direct +// inclusion of arm64_neon.h; Visual Studio 2019 includes this file in +// arm_neon.h. +#if defined(_MSC_VER) && !defined(__clang__) && (QT_CONFIG_neon == 1) && \ + ((_MSC_VER >= 1700 && defined(_M_ARM)) || \ + (_MSC_VER >= 1920 && defined(_M_ARM64))) #define WEBP_USE_NEON #define WEBP_USE_INTRINSICS #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/enc_neon.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/enc_neon.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/enc_neon.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/enc_neon.c 2022-04-05 16:01:27.000000000 +0200 @@ -9,7 +9,7 @@ // // ARM NEON version of speed-critical encoding functions. // -// adapted from libvpx (http://www.webmproject.org/code/) +// adapted from libvpx (https://www.webmproject.org/code/) #include "src/dsp/dsp.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless.c 2022-04-05 16:01:27.000000000 +0200 @@ -107,63 +107,77 @@ //------------------------------------------------------------------------------ // Predictors -uint32_t VP8LPredictor0_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor0_C(const uint32_t* const left, + const uint32_t* const top) { (void)top; (void)left; return ARGB_BLACK; } -uint32_t VP8LPredictor1_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor1_C(const uint32_t* const left, + const uint32_t* const top) { (void)top; - return left; + return *left; } -uint32_t VP8LPredictor2_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor2_C(const uint32_t* const left, + const uint32_t* const top) { (void)left; return top[0]; } -uint32_t VP8LPredictor3_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor3_C(const uint32_t* const left, + const uint32_t* const top) { (void)left; return top[1]; } -uint32_t VP8LPredictor4_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor4_C(const uint32_t* const left, + const uint32_t* const top) { (void)left; return top[-1]; } -uint32_t VP8LPredictor5_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average3(left, top[0], top[1]); +uint32_t VP8LPredictor5_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average3(*left, top[0], top[1]); return pred; } -uint32_t VP8LPredictor6_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average2(left, top[-1]); +uint32_t VP8LPredictor6_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average2(*left, top[-1]); return pred; } -uint32_t VP8LPredictor7_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average2(left, top[0]); +uint32_t VP8LPredictor7_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average2(*left, top[0]); return pred; } -uint32_t VP8LPredictor8_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor8_C(const uint32_t* const left, + const uint32_t* const top) { const uint32_t pred = Average2(top[-1], top[0]); (void)left; return pred; } -uint32_t VP8LPredictor9_C(uint32_t left, const uint32_t* const top) { +uint32_t VP8LPredictor9_C(const uint32_t* const left, + const uint32_t* const top) { const uint32_t pred = Average2(top[0], top[1]); (void)left; return pred; } -uint32_t VP8LPredictor10_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average4(left, top[-1], top[0], top[1]); +uint32_t VP8LPredictor10_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average4(*left, top[-1], top[0], top[1]); return pred; } -uint32_t VP8LPredictor11_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Select(top[0], left, top[-1]); +uint32_t VP8LPredictor11_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Select(top[0], *left, top[-1]); return pred; } -uint32_t VP8LPredictor12_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = ClampedAddSubtractFull(left, top[0], top[-1]); +uint32_t VP8LPredictor12_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = ClampedAddSubtractFull(*left, top[0], top[-1]); return pred; } -uint32_t VP8LPredictor13_C(uint32_t left, const uint32_t* const top) { - const uint32_t pred = ClampedAddSubtractHalf(left, top[0], top[-1]); +uint32_t VP8LPredictor13_C(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = ClampedAddSubtractHalf(*left, top[0], top[-1]); return pred; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless.h 2022-04-05 16:01:27.000000000 +0200 @@ -28,23 +28,38 @@ //------------------------------------------------------------------------------ // Decoding -typedef uint32_t (*VP8LPredictorFunc)(uint32_t left, const uint32_t* const top); +typedef uint32_t (*VP8LPredictorFunc)(const uint32_t* const left, + const uint32_t* const top); extern VP8LPredictorFunc VP8LPredictors[16]; -uint32_t VP8LPredictor0_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor1_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor2_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor3_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor4_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor5_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor6_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor7_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor8_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor9_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor10_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor11_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor12_C(uint32_t left, const uint32_t* const top); -uint32_t VP8LPredictor13_C(uint32_t left, const uint32_t* const top); +uint32_t VP8LPredictor0_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor1_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor2_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor3_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor4_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor5_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor6_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor7_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor8_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor9_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor10_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor11_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor12_C(const uint32_t* const left, + const uint32_t* const top); +uint32_t VP8LPredictor13_C(const uint32_t* const left, + const uint32_t* const top); // These Add/Sub function expects upper[-1] and out[-1] to be readable. typedef void (*VP8LPredictorAddSubFunc)(const uint32_t* in, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_common.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_common.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_common.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_common.h 2022-04-05 16:01:27.000000000 +0200 @@ -179,7 +179,7 @@ int x; \ assert(upper != NULL); \ for (x = 0; x < num_pixels; ++x) { \ - const uint32_t pred = (PREDICTOR)(out[x - 1], upper + x); \ + const uint32_t pred = (PREDICTOR)(&out[x - 1], upper + x); \ out[x] = VP8LAddPixels(in[x], pred); \ } \ } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_enc.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_enc.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_enc.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_enc.c 2022-04-05 16:01:27.000000000 +0200 @@ -745,7 +745,7 @@ assert(upper != NULL); \ for (x = 0; x < num_pixels; ++x) { \ const uint32_t pred = \ - VP8LPredictor##PREDICTOR_I##_C(in[x - 1], upper + x); \ + VP8LPredictor##PREDICTOR_I##_C(&in[x - 1], upper + x); \ out[x] = VP8LSubPixels(in[x], pred); \ } \ } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_mips_dsp_r2.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_mips_dsp_r2.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_mips_dsp_r2.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_mips_dsp_r2.c 2022-04-05 16:01:27.000000000 +0200 @@ -188,46 +188,51 @@ return Average2(Average2(a0, a1), Average2(a2, a3)); } -static uint32_t Predictor5_MIPSdspR2(uint32_t left, const uint32_t* const top) { - return Average3(left, top[0], top[1]); +static uint32_t Predictor5_MIPSdspR2(const uint32_t* const left, + const uint32_t* const top) { + return Average3(*left, top[0], top[1]); } -static uint32_t Predictor6_MIPSdspR2(uint32_t left, const uint32_t* const top) { - return Average2(left, top[-1]); +static uint32_t Predictor6_MIPSdspR2(const uint32_t* const left, + const uint32_t* const top) { + return Average2(*left, top[-1]); } -static uint32_t Predictor7_MIPSdspR2(uint32_t left, const uint32_t* const top) { - return Average2(left, top[0]); +static uint32_t Predictor7_MIPSdspR2(const uint32_t* const left, + const uint32_t* const top) { + return Average2(*left, top[0]); } -static uint32_t Predictor8_MIPSdspR2(uint32_t left, const uint32_t* const top) { +static uint32_t Predictor8_MIPSdspR2(const uint32_t* const left, + const uint32_t* const top) { (void)left; return Average2(top[-1], top[0]); } -static uint32_t Predictor9_MIPSdspR2(uint32_t left, const uint32_t* const top) { +static uint32_t Predictor9_MIPSdspR2(const uint32_t* const left, + const uint32_t* const top) { (void)left; return Average2(top[0], top[1]); } -static uint32_t Predictor10_MIPSdspR2(uint32_t left, +static uint32_t Predictor10_MIPSdspR2(const uint32_t* const left, const uint32_t* const top) { - return Average4(left, top[-1], top[0], top[1]); + return Average4(*left, top[-1], top[0], top[1]); } -static uint32_t Predictor11_MIPSdspR2(uint32_t left, +static uint32_t Predictor11_MIPSdspR2(const uint32_t* const left, const uint32_t* const top) { - return Select(top[0], left, top[-1]); + return Select(top[0], *left, top[-1]); } -static uint32_t Predictor12_MIPSdspR2(uint32_t left, +static uint32_t Predictor12_MIPSdspR2(const uint32_t* const left, const uint32_t* const top) { - return ClampedAddSubtractFull(left, top[0], top[-1]); + return ClampedAddSubtractFull(*left, top[0], top[-1]); } -static uint32_t Predictor13_MIPSdspR2(uint32_t left, +static uint32_t Predictor13_MIPSdspR2(const uint32_t* const left, const uint32_t* const top) { - return ClampedAddSubtractHalf(left, top[0], top[-1]); + return ClampedAddSubtractHalf(*left, top[0], top[-1]); } // Add green to blue and red channels (i.e. perform the inverse transform of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_neon.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_neon.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_neon.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_neon.c 2022-04-05 16:01:27.000000000 +0200 @@ -188,17 +188,21 @@ return avg; } -static uint32_t Predictor5_NEON(uint32_t left, const uint32_t* const top) { - return Average3_NEON(left, top[0], top[1]); +static uint32_t Predictor5_NEON(const uint32_t* const left, + const uint32_t* const top) { + return Average3_NEON(*left, top[0], top[1]); } -static uint32_t Predictor6_NEON(uint32_t left, const uint32_t* const top) { - return Average2_NEON(left, top[-1]); +static uint32_t Predictor6_NEON(const uint32_t* const left, + const uint32_t* const top) { + return Average2_NEON(*left, top[-1]); } -static uint32_t Predictor7_NEON(uint32_t left, const uint32_t* const top) { - return Average2_NEON(left, top[0]); +static uint32_t Predictor7_NEON(const uint32_t* const left, + const uint32_t* const top) { + return Average2_NEON(*left, top[0]); } -static uint32_t Predictor13_NEON(uint32_t left, const uint32_t* const top) { - return ClampedAddSubtractHalf_NEON(left, top[0], top[-1]); +static uint32_t Predictor13_NEON(const uint32_t* const left, + const uint32_t* const top) { + return ClampedAddSubtractHalf_NEON(*left, top[0], top[-1]); } // Batch versions of those functions. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_sse2.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_sse2.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/lossless_sse2.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/lossless_sse2.c 2022-04-05 16:01:27.000000000 +0200 @@ -138,42 +138,51 @@ return output; } -static uint32_t Predictor5_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average3_SSE2(left, top[0], top[1]); +static uint32_t Predictor5_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average3_SSE2(*left, top[0], top[1]); return pred; } -static uint32_t Predictor6_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average2_SSE2(left, top[-1]); +static uint32_t Predictor6_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average2_SSE2(*left, top[-1]); return pred; } -static uint32_t Predictor7_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average2_SSE2(left, top[0]); +static uint32_t Predictor7_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average2_SSE2(*left, top[0]); return pred; } -static uint32_t Predictor8_SSE2(uint32_t left, const uint32_t* const top) { +static uint32_t Predictor8_SSE2(const uint32_t* const left, + const uint32_t* const top) { const uint32_t pred = Average2_SSE2(top[-1], top[0]); (void)left; return pred; } -static uint32_t Predictor9_SSE2(uint32_t left, const uint32_t* const top) { +static uint32_t Predictor9_SSE2(const uint32_t* const left, + const uint32_t* const top) { const uint32_t pred = Average2_SSE2(top[0], top[1]); (void)left; return pred; } -static uint32_t Predictor10_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Average4_SSE2(left, top[-1], top[0], top[1]); +static uint32_t Predictor10_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Average4_SSE2(*left, top[-1], top[0], top[1]); return pred; } -static uint32_t Predictor11_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = Select_SSE2(top[0], left, top[-1]); +static uint32_t Predictor11_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = Select_SSE2(top[0], *left, top[-1]); return pred; } -static uint32_t Predictor12_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = ClampedAddSubtractFull_SSE2(left, top[0], top[-1]); +static uint32_t Predictor12_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = ClampedAddSubtractFull_SSE2(*left, top[0], top[-1]); return pred; } -static uint32_t Predictor13_SSE2(uint32_t left, const uint32_t* const top) { - const uint32_t pred = ClampedAddSubtractHalf_SSE2(left, top[0], top[-1]); +static uint32_t Predictor13_SSE2(const uint32_t* const left, + const uint32_t* const top) { + const uint32_t pred = ClampedAddSubtractHalf_SSE2(*left, top[0], top[-1]); return pred; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/msa_macro.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/msa_macro.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/msa_macro.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/msa_macro.h 2022-04-05 16:01:27.000000000 +0200 @@ -14,6 +14,10 @@ #ifndef WEBP_DSP_MSA_MACRO_H_ #define WEBP_DSP_MSA_MACRO_H_ +#include "src/dsp/dsp.h" + +#if defined(WEBP_USE_MSA) + #include <stdint.h> #include <msa.h> @@ -1389,4 +1393,5 @@ } while (0) #define AVER_UB2_UB(...) AVER_UB2(v16u8, __VA_ARGS__) +#endif // WEBP_USE_MSA #endif // WEBP_DSP_MSA_MACRO_H_ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/neon.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/neon.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/neon.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/neon.h 2022-04-05 16:01:27.000000000 +0200 @@ -12,10 +12,12 @@ #ifndef WEBP_DSP_NEON_H_ #define WEBP_DSP_NEON_H_ -#include <arm_neon.h> - #include "src/dsp/dsp.h" +#if defined(WEBP_USE_NEON) + +#include <arm_neon.h> + // Right now, some intrinsics functions seem slower, so we disable them // everywhere except newer clang/gcc or aarch64 where the inline assembly is // incompatible. @@ -98,4 +100,5 @@ } while (0) #endif +#endif // WEBP_USE_NEON #endif // WEBP_DSP_NEON_H_ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/yuv.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/yuv.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/dsp/yuv.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/dsp/yuv.h 2022-04-05 16:01:27.000000000 +0200 @@ -10,7 +10,7 @@ // inline YUV<->RGB conversion function // // The exact naming is Y'CbCr, following the ITU-R BT.601 standard. -// More information at: http://en.wikipedia.org/wiki/YCbCr +// More information at: https://en.wikipedia.org/wiki/YCbCr // Y = 0.2569 * R + 0.5044 * G + 0.0979 * B + 16 // U = -0.1483 * R - 0.2911 * G + 0.4394 * B + 128 // V = 0.4394 * R - 0.3679 * G - 0.0715 * B + 128 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/frame_enc.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/frame_enc.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/frame_enc.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/frame_enc.c 2022-04-05 16:01:27.000000000 +0200 @@ -778,6 +778,7 @@ // Roughly refresh the proba eight times per pass int max_count = (enc->mb_w_ * enc->mb_h_) >> 3; int num_pass_left = enc->config_->pass; + int remaining_progress = 40; // percents const int do_search = enc->do_search_; VP8EncIterator it; VP8EncProba* const proba = &enc->proba_; @@ -805,6 +806,9 @@ uint64_t size_p0 = 0; uint64_t distortion = 0; int cnt = max_count; + // The final number of passes is not trivial to know in advance. + const int pass_progress = remaining_progress / (2 + num_pass_left); + remaining_progress -= pass_progress; VP8IteratorInit(enc, &it); SetLoopParams(enc, stats.q); if (is_last_pass) { @@ -832,7 +836,7 @@ StoreSideInfo(&it); VP8StoreFilterStats(&it); VP8IteratorExport(&it); - ok = VP8IteratorProgress(&it, 20); + ok = VP8IteratorProgress(&it, pass_progress); } VP8IteratorSaveBoundary(&it); } while (ok && VP8IteratorNext(&it)); @@ -878,7 +882,8 @@ ok = VP8EmitTokens(&enc->tokens_, enc->parts_ + 0, (const uint8_t*)proba->coeffs_, 1); } - ok = ok && WebPReportProgress(enc->pic_, enc->percent_ + 20, &enc->percent_); + ok = ok && WebPReportProgress(enc->pic_, enc->percent_ + remaining_progress, + &enc->percent_); return PostLoopFinalize(&it, ok); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/predictor_enc.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/predictor_enc.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/predictor_enc.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/predictor_enc.c 2022-04-05 16:01:27.000000000 +0200 @@ -249,7 +249,7 @@ } else if (x == 0) { predict = upper_row[x]; // Top. } else { - predict = pred_func(current_row[x - 1], upper_row + x); + predict = pred_func(¤t_row[x - 1], upper_row + x); } #if (WEBP_NEAR_LOSSLESS == 1) if (max_quantization == 1 || mode == 0 || y == 0 || y == height - 1 || diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/quant_enc.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/quant_enc.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/quant_enc.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/quant_enc.c 2022-04-05 16:01:27.000000000 +0200 @@ -585,6 +585,9 @@ return rate * lambda + RD_DISTO_MULT * distortion; } +// Coefficient type. +enum { TYPE_I16_AC = 0, TYPE_I16_DC = 1, TYPE_CHROMA_A = 2, TYPE_I4_AC = 3 }; + static int TrellisQuantizeBlock(const VP8Encoder* const enc, int16_t in[16], int16_t out[16], int ctx0, int coeff_type, @@ -593,7 +596,7 @@ const ProbaArray* const probas = enc->proba_.coeffs_[coeff_type]; CostArrayPtr const costs = (CostArrayPtr)enc->proba_.remapped_costs_[coeff_type]; - const int first = (coeff_type == 0) ? 1 : 0; + const int first = (coeff_type == TYPE_I16_AC) ? 1 : 0; Node nodes[16][NUM_NODES]; ScoreState score_states[2][NUM_NODES]; ScoreState* ss_cur = &SCORE_STATE(0, MIN_DELTA); @@ -657,16 +660,17 @@ // test all alternate level values around level0. for (m = -MIN_DELTA; m <= MAX_DELTA; ++m) { Node* const cur = &NODE(n, m); - int level = level0 + m; + const int level = level0 + m; const int ctx = (level > 2) ? 2 : level; const int band = VP8EncBands[n + 1]; score_t base_score; - score_t best_cur_score = MAX_COST; - int best_prev = 0; // default, in case + score_t best_cur_score; + int best_prev; + score_t cost, score; - ss_cur[m].score = MAX_COST; ss_cur[m].costs = costs[n + 1][ctx]; if (level < 0 || level > thresh_level) { + ss_cur[m].score = MAX_COST; // Node is dead. continue; } @@ -682,18 +686,24 @@ } // Inspect all possible non-dead predecessors. Retain only the best one. - for (p = -MIN_DELTA; p <= MAX_DELTA; ++p) { + // The base_score is added to all scores so it is only added for the final + // value after the loop. + cost = VP8LevelCost(ss_prev[-MIN_DELTA].costs, level); + best_cur_score = + ss_prev[-MIN_DELTA].score + RDScoreTrellis(lambda, cost, 0); + best_prev = -MIN_DELTA; + for (p = -MIN_DELTA + 1; p <= MAX_DELTA; ++p) { // Dead nodes (with ss_prev[p].score >= MAX_COST) are automatically // eliminated since their score can't be better than the current best. - const score_t cost = VP8LevelCost(ss_prev[p].costs, level); + cost = VP8LevelCost(ss_prev[p].costs, level); // Examine node assuming it's a non-terminal one. - const score_t score = - base_score + ss_prev[p].score + RDScoreTrellis(lambda, cost, 0); + score = ss_prev[p].score + RDScoreTrellis(lambda, cost, 0); if (score < best_cur_score) { best_cur_score = score; best_prev = p; } } + best_cur_score += base_score; // Store best finding in current node. cur->sign = sign; cur->level = level; @@ -701,11 +711,11 @@ ss_cur[m].score = best_cur_score; // Now, record best terminal node (and thus best entry in the graph). - if (level != 0) { + if (level != 0 && best_cur_score < best_score) { const score_t last_pos_cost = (n < 15) ? VP8BitCost(0, probas[band][ctx][0]) : 0; const score_t last_pos_score = RDScoreTrellis(lambda, last_pos_cost, 0); - const score_t score = best_cur_score + last_pos_score; + score = best_cur_score + last_pos_score; if (score < best_score) { best_score = score; best_path[0] = n; // best eob position @@ -717,10 +727,16 @@ } // Fresh start - memset(in + first, 0, (16 - first) * sizeof(*in)); - memset(out + first, 0, (16 - first) * sizeof(*out)); + // Beware! We must preserve in[0]/out[0] value for TYPE_I16_AC case. + if (coeff_type == TYPE_I16_AC) { + memset(in + 1, 0, 15 * sizeof(*in)); + memset(out + 1, 0, 15 * sizeof(*out)); + } else { + memset(in, 0, 16 * sizeof(*in)); + memset(out, 0, 16 * sizeof(*out)); + } if (best_path[0] == -1) { - return 0; // skip! + return 0; // skip! } { @@ -775,9 +791,9 @@ for (y = 0, n = 0; y < 4; ++y) { for (x = 0; x < 4; ++x, ++n) { const int ctx = it->top_nz_[x] + it->left_nz_[y]; - const int non_zero = - TrellisQuantizeBlock(enc, tmp[n], rd->y_ac_levels[n], ctx, 0, - &dqm->y1_, dqm->lambda_trellis_i16_); + const int non_zero = TrellisQuantizeBlock( + enc, tmp[n], rd->y_ac_levels[n], ctx, TYPE_I16_AC, &dqm->y1_, + dqm->lambda_trellis_i16_); it->top_nz_[x] = it->left_nz_[y] = non_zero; rd->y_ac_levels[n][0] = 0; nz |= non_zero << n; @@ -818,7 +834,7 @@ if (DO_TRELLIS_I4 && it->do_trellis_) { const int x = it->i4_ & 3, y = it->i4_ >> 2; const int ctx = it->top_nz_[x] + it->left_nz_[y]; - nz = TrellisQuantizeBlock(enc, tmp, levels, ctx, 3, &dqm->y1_, + nz = TrellisQuantizeBlock(enc, tmp, levels, ctx, TYPE_I4_AC, &dqm->y1_, dqm->lambda_trellis_i4_); } else { nz = VP8EncQuantizeBlock(tmp, levels, &dqm->y1_); @@ -927,9 +943,9 @@ for (y = 0; y < 2; ++y) { for (x = 0; x < 2; ++x, ++n) { const int ctx = it->top_nz_[4 + ch + x] + it->left_nz_[4 + ch + y]; - const int non_zero = - TrellisQuantizeBlock(enc, tmp[n], rd->uv_levels[n], ctx, 2, - &dqm->uv_, dqm->lambda_trellis_uv_); + const int non_zero = TrellisQuantizeBlock( + enc, tmp[n], rd->uv_levels[n], ctx, TYPE_CHROMA_A, &dqm->uv_, + dqm->lambda_trellis_uv_); it->top_nz_[4 + ch + x] = it->left_nz_[4 + ch + y] = non_zero; nz |= non_zero << n; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/vp8i_enc.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/vp8i_enc.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/enc/vp8i_enc.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/enc/vp8i_enc.h 2022-04-05 16:01:27.000000000 +0200 @@ -32,7 +32,7 @@ // version numbers #define ENC_MAJ_VERSION 1 #define ENC_MIN_VERSION 2 -#define ENC_REV_VERSION 1 +#define ENC_REV_VERSION 2 enum { MAX_LF_LEVELS = 64, // Maximum loop filter level MAX_VARIABLE_LEVEL = 67, // last (inclusive) level with variable cost diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/mux/muxi.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/mux/muxi.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/mux/muxi.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/mux/muxi.h 2022-04-05 16:01:27.000000000 +0200 @@ -29,7 +29,7 @@ #define MUX_MAJ_VERSION 1 #define MUX_MIN_VERSION 2 -#define MUX_REV_VERSION 1 +#define MUX_REV_VERSION 2 // Chunk object. typedef struct WebPChunk WebPChunk; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/utils/huffman_encode_utils.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/utils/huffman_encode_utils.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/utils/huffman_encode_utils.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/utils/huffman_encode_utils.c 2022-04-05 16:01:27.000000000 +0200 @@ -161,7 +161,7 @@ // especially when population counts are longer than 2**tree_limit, but // we are not planning to use this with extremely long blocks. // -// See http://en.wikipedia.org/wiki/Huffman_coding +// See https://en.wikipedia.org/wiki/Huffman_coding static void GenerateOptimalTree(const uint32_t* const histogram, int histogram_size, HuffmanTree* tree, int tree_depth_limit, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/utils/quant_levels_dec_utils.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/utils/quant_levels_dec_utils.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/utils/quant_levels_dec_utils.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/utils/quant_levels_dec_utils.c 2022-04-05 16:01:27.000000000 +0200 @@ -30,7 +30,7 @@ #define DFIX 4 // extra precision for ordered dithering #define DSIZE 4 // dithering size (must be a power of two) -// cf. http://en.wikipedia.org/wiki/Ordered_dithering +// cf. https://en.wikipedia.org/wiki/Ordered_dithering static const uint8_t kOrderedDither[DSIZE][DSIZE] = { { 0, 8, 2, 10 }, // coefficients are in DFIX fixed-point precision { 12, 4, 14, 6 }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/utils/utils.c new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/utils/utils.c --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/utils/utils.c 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/utils/utils.c 2022-04-05 16:01:27.000000000 +0200 @@ -23,7 +23,7 @@ // alloc/free etc) is printed. For debugging/tuning purpose only (it's slow, // and not multi-thread safe!). // An interesting alternative is valgrind's 'massif' tool: -// http://valgrind.org/docs/manual/ms-manual.html +// https://valgrind.org/docs/manual/ms-manual.html // Here is an example command line: /* valgrind --tool=massif --massif-out-file=massif.out \ --stacks=yes --alloc-fn=WebPSafeMalloc --alloc-fn=WebPSafeCalloc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/webp/config.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/webp/config.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/webp/config.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/webp/config.h 2022-04-05 16:01:27.000000000 +0200 @@ -29,9 +29,6 @@ /* Define to 1 if you have the <inttypes.h> header file. */ /* #undef HAVE_INTTYPES_H */ -/* Define to 1 if you have the <memory.h> header file. */ -/* #undef HAVE_MEMORY_H */ - /* Define to 1 if you have the <OpenGL/glut.h> header file. */ /* #undef HAVE_OPENGL_GLUT_H */ @@ -44,6 +41,9 @@ /* Define to 1 if you have the <stdint.h> header file. */ /* #undef HAVE_STDINT_H */ +/* Define to 1 if you have the <stdio.h> header file. */ +/* #undef HAVE_STDIO_H */ + /* Define to 1 if you have the <stdlib.h> header file. */ /* #undef HAVE_STDLIB_H */ @@ -81,7 +81,7 @@ #define PACKAGE_NAME "libwebp" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "libwebp 1.2.1" +#define PACKAGE_STRING "libwebp 1.2.2" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "libwebp" @@ -90,17 +90,19 @@ #define PACKAGE_URL "http://developers.google.com/speed/webp" /* Define to the version of this package. */ -#define PACKAGE_VERSION "1.2.1" +#define PACKAGE_VERSION "1.2.2" /* Define to necessary symbol if this constant uses a non-standard name on your system. */ /* #undef PTHREAD_CREATE_JOINABLE */ -/* Define to 1 if you have the ANSI C header files. */ +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ /* #undef STDC_HEADERS */ /* Version number of package */ -#define VERSION "1.2.1" +#define VERSION "1.2.2" /* Enable experimental code */ /* #undef WEBP_EXPERIMENTAL_FEATURES */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/webp/decode.h new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/webp/decode.h --- old/qtimageformats-everywhere-src-6.2.4/src/3rdparty/libwebp/src/webp/decode.h 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/3rdparty/libwebp/src/webp/decode.h 2022-04-05 16:01:27.000000000 +0200 @@ -85,7 +85,7 @@ // Upon return, the Y buffer has a stride returned as '*stride', while U and V // have a common stride returned as '*uv_stride'. // Return NULL in case of error. -// (*) Also named Y'CbCr. See: http://en.wikipedia.org/wiki/YCbCr +// (*) Also named Y'CbCr. See: https://en.wikipedia.org/wiki/YCbCr WEBP_EXTERN uint8_t* WebPDecodeYUV(const uint8_t* data, size_t data_size, int* width, int* height, uint8_t** u, uint8_t** v, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtimageformats-everywhere-src-6.2.4/src/plugins/imageformats/tiff/qtiffhandler.cpp new/qtimageformats-everywhere-src-6.3.0/src/plugins/imageformats/tiff/qtiffhandler.cpp --- old/qtimageformats-everywhere-src-6.2.4/src/plugins/imageformats/tiff/qtiffhandler.cpp 2022-03-04 05:15:48.000000000 +0100 +++ new/qtimageformats-everywhere-src-6.3.0/src/plugins/imageformats/tiff/qtiffhandler.cpp 2022-04-05 16:01:27.000000000 +0200 @@ -44,6 +44,7 @@ #include <qfloat16.h> #include <qimage.h> #include <qvariant.h> +#include <qvarlengtharray.h> extern "C" { #include "tiffio.h"