summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* tiff: do not try to read 32bpc as 16bpcEirik Aavitsland2020-03-121-2/+2
| | | | | | | | | | The header reader would assume that bits per sample above 8 had to be 16, but other values are also possible, so check explicitly. Fixes: QTBUG-82412 Change-Id: I7f0799de4d4cdc84023a34900aa595a7bf73eca1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 0c4d4dc12a68124451113e21d2c4fdc5d06d01d0)
* Update bundled libtiff to version 4.1.0Eirik Aavitsland2019-11-0631-712/+2630
| | | | | | | | [ChangeLog][Third-Party Code] Bundled libtiff was updated to version 4.1.0 Change-Id: I3e841863c5cf8588bf62b6520f34e64909394998 (cherry picked from commit ba1fb21bc61a2075c7fd058e7f7ba5caf7d2f400) Reviewed-by: Liang Qi <liang.qi@qt.io>
* Tiff: Include two upstream CVE fixes in bundled libtiffEirik Aavitsland2019-10-308-112/+91
| | | | | | | | | | | | | | | | | | | For issues CVE-2019-17546 and CVE-2019-14973, the following commits were merged into the bundled libtiff: 4bb584a35f87af42d6cf09d15e9ce8909a839145 RGBA interface: fix integer overflow potentially causing write heap buffer overflow, especially on 32 bit builds. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16443. Credit to OSS Fuzz 1b5e3b6a23827c33acf19ad50ce5ce78f12b3773 Fix integer overflow in _TIFFCheckMalloc() and other implementation-defined behaviour (CVE-2019-14973) (cherry picked from commit 9fe1f2e918d39031852805f1add23125c061d3c3) Change-Id: Ia98d381bb677fcd167724895515eb3fdecee9709 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Reapply: Fix building with clang_clAllan Sandfeld Jensen2019-07-311-3/+3
| | | | | | | | This fix was mistakenly overwritten by the recent 1.0.3 upgrade. Change-Id: Ifcfeeac075d97d770de471380c506fb739f0b52a (cherry picked from commit dbfcea2a638d9223bb8d4d9ffc63b0d294b9f97d) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Update bundled libwebp to version 1.0.3André Klitzing2019-07-2246-346/+532
| | | | | | | | [ChangeLog][Third-Party Code] Update bundled libwebp to version 1.0.3 Change-Id: I7aef89e209923af0e516024c26ebce4a8158d4d1 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* Fix feature and library checks for tiff and mngJoerg Bornemann2019-05-132-5/+9
| | | | | | | This amends commit a33e3aea. Change-Id: I03304f5bf300e5e52476c3f3d6b06b0815009720 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Fix -no-gui buildJoerg Bornemann2019-04-121-0/+1
| | | | | | | Change-Id: I57639389880e5c73025ffe3db9f411fc5b0e78e8 Fixes: QTBUG-75113 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* Remove the QT_NO_IMAGEFORMAT_{TIFF|WEBP} definesJoerg Bornemann2019-04-023-10/+2
| | | | | | | They are #undef'ed anyway. Change-Id: Ic1cb3c09b5849f16115d8514fef471825d564f2c Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Move qtimageformats over to the new config systemLiang Qi2019-04-025-11/+233
| | | | | | | Task-number: QTBUG-44318 Task-number: QTBUG-62259 Change-Id: Ide5c28015c46b12ee3f21d06badd69db8bed1281 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Fix building with clang_clAllan Sandfeld Jensen2019-04-011-3/+3
| | | | | | | | | Clang reports itself as MSVC but doesn't allow intrinsics to be used unconditionally independent of command-line flags like MSVC does. Fixes: QTBUG-68551 Change-Id: I65d1ee1aa5c02b7c3a25c10c69c3d5e88129b858 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Heic handler: fix orientation and other image propertiesEirik Aavitsland2019-03-264-48/+207
| | | | | | | | | | The mac heic handler lacked support for any meta-data i/o. Most notably, the image orientation proprty was ignored, so images read in could be wrongly oriented. Fixes: QTBUG-73415 Change-Id: I779f91dc28c7441b124aab4557e1abcd3e69fde9 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* tiff handler: fix compilation failureEirik Aavitsland2019-03-251-1/+1
| | | | | | | | | Avoid using the tmsize_t type, since it may not be defined. Fixes: QTBUG-74283 Change-Id: I63a496173ec08c6ceac569c516d11a4711e32649 Reviewed-by: Richard Öhlinger <richard.oehlinger@adbsafegate.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Update bundled libwebp to version 1.0.2André Klitzing2019-02-0421-165/+530
| | | | | | | | [ChangeLog][Third-Party Code] Update bundled libwebp to version 1.0.2 Change-Id: I12e1557cef6e592c8c2ca417ef87f6df35a7b410 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-12-11135-864/+1687
|\ | | | | | | Change-Id: Ib84ba922bb21f9e6c52c3096e7ae0fc10025c202
| * Update bundled libtiff to version 4.0.10Eirik Aavitsland2018-11-1967-469/+987
| | | | | | | | | | | | | | [ChangeLog][Third-Party Code] Bundled libtiff was updated to version 4.0.10 Change-Id: Ib1908d09fc5847381cb03418de878fafd2001a30 Reviewed-by: Liang Qi <liang.qi@qt.io>
| * Update bundled libwebp to version 1.0.1André Klitzing2018-11-1968-395/+700
| | | | | | | | | | | | | | [ChangeLog][Third-Party Code] Update bundled libwebp to version 1.0.1 Change-Id: Ieccb9f7c0023e6f6591b6093eead9f6940be3210 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-10-271-5/+14
|\| | | | | | | Change-Id: I56fb4e7a178ac79c75a846d9a7bcd8f1f3533673
| * tiffhandler: improve stripsizeEirik Aavitsland2018-10-251-5/+14
| | | | | | | | | | | | | | | | | | | | libtiff's default stripsize is tiny (8KB), so splitting the image into such strips on writing would significantly hurt the compression rate. Aim for 4MB strips instead. Task-number: QTBUG-70820 Change-Id: I07a9a8c81edf62e802b4ae8d6729a76df15e42ac Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Remove bundled, unmaintained libjasper source codev5.12.0-beta3Eirik Aavitsland2018-10-15121-42492/+7
| | | | | | | | | | | | | | | | | | [ChangeLog][Third-Party Code] The unmaintained bundled libjasper has been removed. Building the jp2 handler will require libjasper to be present as a system or external library. Change-Id: Ic48cc6021fc5fb64fb369eb9621fd7a811e8e9f7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-10-134-10/+31
|\| | | | | | | Change-Id: If9cf53dac5e906350e652e52842f3b54bc3fe65f
| * Bundled libtiff: add a number of security-related upstream patchesEirik Aavitsland2018-10-124-10/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This comprises the following libtiff commits, related to the listed CVEs: 3719385a3fac5cfb20b487619a5f08abbf967cf8 CVE-2017-11613 7a092f8af2568d61993a8cc2e7a35a998d7d37be CVE-2017-11613 de144fd228e4be8aa484c3caf3d814b6fa88c6d9 CVE-2018-10963 58a898cb4459055bb488ca815c23b880c242a27d CVE-2018-8905 981e43ecae83935625c86c9118c0778c942c7048 CVE-2018-10779 [ChangeLog][TIFF] A number of security-related upstream patches has been applied to the bundled libtiff Change-Id: I3def9a9b91d0dd2cfd959c5e83d972beed9394d6 Reviewed-by: Liang Qi <liang.qi@qt.io>
* | Remove bundled, unmaintained libmng source codev5.12.0-beta2Eirik Aavitsland2018-10-1280-99057/+7
| | | | | | | | | | | | | | | | | | [ChangeLog][Third-Party Code] The unmaintained bundled libmng has been removed. Building the mng handler will require libmng to be present as a system or external library. Change-Id: I4a4805fa3f3088b5d581b92bfeabba7978bac5f7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | tiff handler: ensure valid value of the compression optionv5.12.0-beta1Eirik Aavitsland2018-09-171-1/+1
| | | | | | | | | | | | | | | | Bound the value of the compression setting to the possible values of the QTiffHandler::Compression enum. Change-Id: I50e1eb8014654d8b4403d7f06e6099661e57562c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-09-011-0/+8
|\| | | | | | | Change-Id: I04f8b27d37b677f15853ba84017d3f2a36368422
| * TGA handler: check for out of range image sizeEirik Aavitsland2018-08-281-0/+8
| | | | | | | | | | | | | | | | Make the decoder fail early to avoid spending time and memory on attempting to decode a corrupt image file. Change-Id: Iac35e72de743f412a65d11c58fe7faa275dc4e41 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Add RGBA64 format support to TIFF pluginAllan Sandfeld Jensen2018-08-232-12/+104
| | | | | | | | | | | | | | TIFF is one of the primary formats for HDR images. Change-Id: I5310b5c9a625fd3e759e5120be6ba547c633c81c Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-06-121-5/+10
|\| | | | | | | Change-Id: Ieebdb63bc396bb683b85e3d07ec9c5d78bd30f69
| * Fix tiffhandler: ensure saved tiffs have suitable ROWSPERSTRIP tag setEirik Aavitsland2018-06-061-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When writing an image without compression, libtiff will automatically store it in strips of default size, and add a ROWSPERSTRIP tag accordingly. However, if compression is enabled, libtiff does not do this. The lack of this tag may create trouble for readers. Fix by explicitly setting the tag in all cases. [ChangeLog][TIFF] Ensure saved tiffs have suitable ROWSPERSTRIP tag set Task-number: QTBUG-68609 Change-Id: I838c83be25158d7f13e220098e960010b8cb2789 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | webp handler: improve quality-level handlingEirik Aavitsland2018-05-301-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | In lossless mode, libwebp interpretes the quality setting as a compression-effort setting instead. The code used to set it to 100 (maximum), which could lead to unreasonable compression times (several seconds for a small image). Instead set it to libweb's own default value. Also, since the alpha channel compression has its own quality setting, make sure it follows the main quality/effort setting. Change-Id: I595d42c61f61c9932b27b185745bde6e7cfb3526 Reviewed-by: Liang Qi <liang.qi@qt.io>
* | webp handler: support alpha-less reading and writingEirik Aavitsland2018-05-281-14/+13
|/ | | | | | | | | | | | | | Webp files can be with or without alpha channel. The handler would ignore this and read all as Format_ARGB32 images, and write all as having alpha, in both cases losing that important bit of information. As a driveby, simplify the endianness handling in write(). By always converting the source image to an endianness-independent QImage format, no special handling is required. Task-number: QTBUG-48628 Change-Id: I624ed72b18a8b59a542979efcb4e8ff81214e0d7 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Update bundled libwebp to version 1.0.0Liang Qi2018-05-2256-858/+1693
| | | | | | | | | | | | | | | This commit imports libwebp 1.0.0, including AUTHORS, COPYING, ChangeLog, NEWS, PATENTS, README and src directories. In src, only includes header and source files. Upstream changes since 0.6.1 have been merged in. Also updated version in qt_attribution.json. [ChangeLog][Third-Party Code] Update bundled libwebp to version 1.0.0. Change-Id: Ia30ccc90286d5dd3e48e091f101f1cae84785150 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Update the bundled libwebp to version 0.6.1v5.11.0-beta4Eirik Aavitsland2018-04-12161-5553/+7243
| | | | | | | | Upstream changes since 0.6.0 have been merged in. Also updated version in qt_attribution.json. Change-Id: I6f46bdfe2dd7288dbe61c4d7924309bb435e3928 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Doc: Set empty module header for the documentation projectv5.11.0-beta3Topi Reinio2018-03-281-0/+3
| | | | | | | This prevents a QDoc Clang C++ parser warning about a missing header. Change-Id: Id14b17de72488a12108b583ed0673d0451ff5e15 Reviewed-by: Martin Smith <martin.smith@qt.io>
* Merge remote-tracking branch 'origin/5.10.1' into 5.11v5.11.0-alpha1Liang Qi2018-02-141-4/+4
|\ | | | | | | Change-Id: Ifbf48df8a449de12d91631d44cab0320dfd5f699
| * Add fix for CVE-2017-18013 of libtiffv5.10.1André Klitzing2018-02-091-4/+4
| | | | | | | | | | | | | | | | http://bugzilla.maptools.org/show_bug.cgi?id=2770 Change-Id: I936b463b37fa922930cf122cfddf842d81ee796e Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 25d7e0440f091b39c2865187eb0630045fa20e46)
* | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-1517-54/+103
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: If4baad0b1949c1c8f7157c213fc492775053ae0b
| * Merge remote-tracking branch 'origin/5.9' into 5.105.10Liang Qi2018-01-1517-54/+103
| |\ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I827727fde51a71cbef5d61fb6cc2cd45d5e3bd7c
| | * Make the native darwin image IO work on iOS tooEirik Aavitsland2017-12-141-17/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | The functions used for converting between QImage and CGImage were not available on iOS. Replace with newer conversions functions which are. Task-number: QTBUG-64722 Change-Id: I3f62d3ccabd103e5b9d4828e8079d94587472872 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * Update bundled libtiff to version 4.0.9André Klitzing2017-11-2214-31/+93
| | | | | | | | | | | | | | | | | | | | | [ChangeLog][Third-Party Code] Bundled libtiff was updated to version 4.0.9 Change-Id: I64a56d9b01cc1bb102a3368269ae9915fac5a051 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| | * WebP: Fix wrong default quality level for writingEirik Aavitsland2017-11-162-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a negative (i.e. illegal/unset) quality value was set to the WebP handler, it would just bound it to 0 (minimum quality level). This would happen on every save where no explicit quality level had been requested on the QImageWriter. Fix by copying the jpeg handler's behavior: If a negative value is set, use the default level (75) when storing. [ChangeLog][WebP handler] Fixed default quality level for writing Task-number: QTBUG-64437 Change-Id: I0f1cabba6cea6851c6a813bf5bf7ab8e8c49ddfb Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-11-2047-474/+2618
|\| | | | | | | | | | | Change-Id: If0c8e712f7521483df688ae9d33adea8b5fdaae5
| * | Merge remote-tracking branch 'origin/5.9' into 5.10v5.10.0-beta4Liang Qi2017-10-3047-474/+2618
| |\| | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I84737121b8915a6c358ad92246984749e2719bed
| | * TGA: Fix clazy-copyable-polymorphicFriedemann Kleint2017-10-191-0/+4
| | | | | | | | | | | | | | | Change-Id: Iba0631701fbecdd66ffa1d12c57387d76aa65475 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| | * Update bundled libtiff to version 4.0.8+Eirik Aavitsland2017-10-1944-468/+2608
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This updates the bundled libtiff to release 4.0.8. In addition, since after that release a number of security-related fixes has been added to the upstream CVS repository, this commit comprises the upstream changes of libtiff until 2017-10-10. (Corresponds to commit 46195f7 in the unofficial mirror at github.com/vadz/libtiff.git.) [ChangeLog][Third-Party Code] Bundled libtiff was updated to version 4.0.8+ Change-Id: I9f45387ab48383ef2635d60aeda5c74828f1a6fc Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * Fix outdated FDL license headerKai Koehne2017-10-171-5/+5
| | | | | | | | | | | | | | | Change-Id: I1e024810b9c5a9fc32986507d263f8b9727f2315 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
| | * Avoid returning void expressionAndré Klitzing2017-10-061-1/+1
| | | | | | | | | | | | | | | Change-Id: I32dd4ece07c0ff4ef882fffe69afbe2f4a818a96 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | | Add native Darwin handler for the HEIF (.heic) formatEirik Aavitsland2017-10-3010-7/+339
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds basic support for still images encoded with the HEIF standard introduced in macOS Sierra and IOS 11. Uses the Core Graphics Image I/O Framework as codec backend. Reuses the helper class from the macjp2 handler. Change-Id: I5f0c7891b189a916cccd2c27eacbac12416ce209 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | Check for not clang when checking for MSVCAllan Sandfeld Jensen2017-09-291-1/+2
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-63512 Change-Id: I9cd97dc178c108dfca0b1ee12dd18b78497603d7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | | Replace Q_DECL_OVERRIDE with overrideKevin Funk2017-09-221-4/+4
|/ / | | | | | | | | Change-Id: Iba9c9b77bea8c4ec6915a0cac6aa9c84aaa77dca Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Fix deprecation warningsv5.10.0-beta3v5.10.0-beta2v5.10.0-beta1v5.10.0-alpha1Allan Sandfeld Jensen2017-08-071-1/+1
| | | | | | | | | | | | | | Use new sizeInBytes() method. Change-Id: I3fa5969ac04e2edb87a06f132dc0b60e65718b81 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>