Commit Graph

1695 Commits

Author SHA1 Message Date
Andrew Murray
e7f5bb1831 Ensure file is closed if it is opened by ImageQt.ImageQt 2021-03-08 20:38:03 +11:00
Andrew Murray
9ce3eba7eb Only draw each pixel once 2021-03-08 19:54:03 +11:00
Andrew Murray
f5d49f4f61 Added rounded_rectangle method 2021-03-08 19:53:59 +11:00
Hugo van Kemenade
6108596ff8
Merge pull request #5289 from radarhere/ipythonviewer 2021-03-07 14:26:50 +02:00
Hugo van Kemenade
3a27118d76
Merge pull request #5183 from radarhere/rectangle
Only draw each rectangle outline pixel once
2021-03-07 12:25:45 +02:00
Hugo van Kemenade
f15f573e51
Merge pull request #5224 from radarhere/mapper 2021-03-07 11:51:46 +02:00
Hugo van Kemenade
f9b830f058
Merge pull request #5214 from radarhere/pcx
Handle PCX images with an odd stride
2021-03-07 11:41:14 +02:00
Hugo van Kemenade
95986f38da
Merge pull request #5168 from radarhere/mpo 2021-03-07 11:38:36 +02:00
Andrew Murray
ca204ba04f Removed Image._MODEINFO 2021-03-07 14:21:27 +11:00
Andrew Murray
690cf9ebe2 Allow alpha_composite destination to be negative 2021-03-06 20:54:21 +11:00
Eric Soroos
480f6819b5 Fix Memory DOS in Icns, Ico and Blp Image Plugins
Some container plugins that could contain images of other formats,
such as the ICNS format, did not properly check the reported size of
the contained image. These images could cause arbitrariliy large
memory allocations.

This is fixed for all locations where individual *ImageFile classes
are created without going through the usual Image.open method.
2021-03-06 10:19:14 +11:00
Andrew Murray
7b09463809 Added IPythonViewer docstring 2021-03-04 08:56:49 +11:00
Andrew Murray
f067fe4c05 Added import alias for clarity 2021-03-04 08:56:03 +11:00
Andrew Murray
346bfc9537 Added IPythonViewer 2021-03-04 08:55:24 +11:00
Luke Granger-Brown
852fd170f8 Fix -Wformat error in TiffDecode
src/libImaging/TiffDecode.c: In function ‘_tiffReadProc’:
src/libImaging/TiffDecode.c:59:58: error: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘toff_t’ {aka ‘long unsigned int’} [-Werror=format=]
src/libImaging/TiffDecode.c:59:67: error: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘toff_t’ {aka ‘long unsigned int’} [-Werror=format=]
2021-03-03 13:30:28 +00:00
wiredfool
c477bed95f
Merge pull request #5280 from cgohlke/patch-1
Fix suspicious sequence of types castings
2021-03-01 20:19:26 +00:00
Hugo van Kemenade
3bce145966 Use more specific regex chars to prevent ReDoS
* CVE-2021-25292
2021-03-01 19:04:57 +11:00
Eric Soroos
cbdce6c5d0 Fix for CVE-2021-25291
* Invalid tile boundaries lead to OOB Read in TiffDecode.c, in TiffReadRGBATile
* Check the tile validity before attempting to read.
2021-03-01 19:04:48 +11:00
Eric Soroos
86f02f7c70 Fix negative size read in TiffDecode.c
* Caught by oss-fuzz runs
* CVE-2021-25290
2021-03-01 19:04:42 +11:00
Eric Soroos
4853e522bd Fix OOB read in SgiRleDecode.c
* From Pillow 4.3.0->8.1.0
* CVE-2021-25293
2021-03-01 19:04:19 +11:00
Eric Soroos
3fee28eb94 Incorrect error code checking in TiffDecode.c
* since Pillow 8.1.0
* CVE-2021-25289
2021-03-01 18:51:13 +11:00
Andrew Murray
5f92636bd0 Removed comment 2021-02-27 00:33:23 +11:00
Andrew Murray
114145a61a Set all transparent colors to be equal 2021-02-25 22:49:11 +11:00
Christoph Gohlke
71f48e19b9
Use unsigned size_t 2021-02-24 08:15:25 -08:00
Christoph Gohlke
48ac517c8d
Fix suspicious sequence of types castings 2021-02-24 07:02:42 -08:00
Andrew Murray
297789284b Fixed linear_gradient and radial_gradient 32-bit modes 2021-02-22 19:32:52 +11:00
Andrew Murray
c0ee869c2c Only draw each rectangle outline pixel once 2021-02-22 07:48:58 +11:00
Andrew Murray
e763f8f2be Save interop IFD when converting Exif to bytes 2021-02-22 07:47:59 +11:00
Andrew Murray
b25bc40009 Simplified code
Co-authored-by: Konstantin Kopachev <kkopachev@popsugar.com>
2021-02-22 07:47:05 +11:00
Andrew Murray
4b14f0102d Save base IFDs when converting Exif to bytes 2021-02-22 07:47:05 +11:00
Andrew Murray
faf8fad76d Stopped flattening EXIF IFD into getexif() 2021-02-22 07:47:05 +11:00
Andrew Murray
223b05a2ea Corrected docstring 2021-02-16 22:33:17 +11:00
Andrew Murray
c8ca4b909a Added braces 2021-02-13 11:32:52 +11:00
Andrew Murray
57d6e8ca43 Added PyQt6 support 2021-02-10 21:12:32 +11:00
Andrew Murray
441d75aa28 Updated docstring 2021-02-09 19:14:57 +11:00
Andrew Murray
bc0c0cb11a
Merge pull request #5250 from Piolie/open_formats_case
Changed Image.open formats parameter to be case-insensitive
2021-02-08 18:19:02 +11:00
Andrew Murray
9b56833300
Merge branch 'master' into fribidi-link 2021-02-07 16:02:16 +11:00
Andrew Murray
587e073dac Moved case transformation before initialization check 2021-02-05 20:28:34 +11:00
Piolie
0c1675a143 Make formats parameter in Image.open accept aNy cAsE 2021-02-04 22:47:53 -03:00
Hugo van Kemenade
54f12f8aad
Merge pull request #5216 from radarhere/tk
Deprecate Tk/Tcl 8.4, to be removed in Pillow 10 (2023-01-02)
2021-02-02 15:00:15 +02:00
Andrew Murray
c10bf8d9a7 Improved docstring [ci skip] 2021-01-31 13:14:14 +11:00
Andrew Murray
685e951182 Removed unused C code 2021-01-30 11:23:24 +11:00
Andrew Murray
f2f92d22d1 Do not use "use built-in mapper WIN32 only" 2021-01-30 11:23:24 +11:00
Andrew Murray
428a62c696
Merge pull request #5223 from Bitblade/master
Documentation error: Wrong threshold in conversion from L to 1
2021-01-27 17:51:10 +11:00
Andrew Murray
c9740ab7e3 Deprecate Tk/Tcl 8.4, to be removed in Pillow 10 (2023-01-02) 2021-01-26 18:14:28 +11:00
Andrew Murray
cf98f178ad Added tk version 2021-01-26 08:01:26 +11:00
Mark Laagland
e6ff82b9ab Small fix for convert documentation of Image.py
[ci skip]
2021-01-24 22:49:27 +01:00
Andrew Murray
ac31061f22 Handle PCX images with an odd stride 2021-01-21 19:29:11 +11:00
Andrew Murray
6f236284b0 Corrected CVE number 2021-01-20 20:43:00 +11:00
Andrew Murray
bdbf1694fc Allow PixelAccess to use Python __int__ when parsing x and y 2021-01-14 21:31:25 +11:00
Andrew Murray
543fa2ceb7
Merge pull request #5194 from radarhere/python310
PyModule_AddObject fix for Python 3.10
2021-01-12 21:53:54 +11:00
Andrew Murray
4eccadced4 Document that getcolors() returns colors in the image mode [ci skip] 2021-01-09 21:30:16 +11:00
Andrew Murray
cf190a3c2f PyModule_AddObject fix for Python 3.10 2021-01-09 12:17:57 +11:00
nulano
8c02e3803b Revert "raqm: avoid declaring variables in for statement for C89 compatibility"
This reverts commit b3cfe73854e74bc25a88f53b177713bfb63812e4.
2021-01-05 00:07:03 +11:00
nulano
9c178435fb raqm: fix FriBiDi<1 support 2021-01-05 00:07:03 +11:00
nulano
b4a57d6fc5 support FriBiDi<1.0 2021-01-05 00:07:03 +11:00
nulano
f2b2d53ca8 raqm: avoid declaring variables in for statement for C89 compatibility 2021-01-05 00:07:03 +11:00
nulano
c3fce854f2 avoid NULL in fribidi shim 2021-01-05 00:07:03 +11:00
nulano
be0d0a3a48 fix finding raqm deps 2021-01-05 00:07:03 +11:00
nulano
3386a9ce02 replace tabs in thirdparty libs 2021-01-05 00:06:29 +11:00
nulano
5cd688fc82 add option to statically link fribidi, version info 2021-01-05 00:06:29 +11:00
nulano
9e5fc136b9 add Raqm license and readme 2021-01-05 00:03:52 +11:00
nulano
8bc1ff35b4 use FriBiDi shim in Raqm 2021-01-05 00:03:52 +11:00
nulano
e5e5761da4 add raqm to thirdparty directory 2021-01-04 23:57:31 +11:00
Uriel Martinez
7f5dbb7c9b
Update src/PIL/Image.py
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-01-02 21:57:24 -06:00
Andrew Murray
46b7e86bab Format with ClangFormat 2021-01-03 14:17:51 +11:00
Andrew Murray
56e7d1fd9b 8.2.0.dev0 version bump 2021-01-03 07:14:59 +11:00
Andrew Murray
fcc42e0d34 8.1.0 version bump 2021-01-02 22:39:02 +11:00
Andrew Murray
c8dd1c8422
Merge pull request #5175 from radarhere/tiff
Fix TIFF OOB Write error
2021-01-02 21:13:28 +11:00
Andrew Murray
0117694533
Merge pull request #5174 from radarhere/pcx
Fix for Read Overflow in PCX Decoding
2021-01-02 21:00:25 +11:00
Eric Soroos
2f409261eb Fix for CVE CVE-2020-35655 - Read Overflow in PCX Decoding.
* Don't trust the image to specify a buffer size
2021-01-02 20:38:46 +11:00
wiredfool
45a62e91b1 Rework ReadTile
* Don't malloc for the swap line, just shuffle backwards
* Ensure that im->pixelsize is sanity checked
* Ensure that we're using the right size for the buffer from TiffReadRGBATile
2021-01-02 20:37:48 +11:00
wiredfool
eb8c1206d6 Fix CVE-2020-35654 - OOB Write in TiffDecode.c
* In some circumstances with some versions of libtiff (4.1.0+), there
  could be a 4 byte out of bound write when decoding a YCbCr tiff.
* The Pillow code dates to 6.0.0
* Found and reported through Tidelift
2021-01-02 20:37:48 +11:00
Eric Soroos
9a2c9f722f Make the SGI code return -1 as an error flag, error in state 2021-01-02 20:10:02 +11:00
Eric Soroos
7e95c63fa7 Fix for SGI Decode buffer overrun CVE-2020-35655
* Independently found by a contributor and sent to Tidelift, and by Google's OSS Fuzz.
2021-01-02 20:09:58 +11:00
Hugo van Kemenade
07bbc46589
Merge pull request #5149 from wiredfool/gif_write_oob_read 2021-01-02 10:14:17 +02:00
Hugo van Kemenade
4e3dc9a06b Add support for PySide6 2021-01-01 20:34:44 +02:00
Andrew Murray
6175389186 Only read different sizes for "Large Thumbnail" frames 2021-01-01 12:45:02 +11:00
Hugo van Kemenade
4093897673
Merge pull request #5126 from radarhere/apng_disposal
Use disposal settings from previous frame in APNG
2020-12-31 16:06:33 +02:00
Andrew Murray
01cee38b9b
Merge pull request #5153 from radarhere/tiff_wheels
Updated libtiff to 4.2.0
2020-12-31 10:01:19 +11:00
Andrew Murray
3c482b1b0b Changed list of single item dictionaries to dictionary 2020-12-30 23:10:29 +11:00
Andrew Murray
ad9614be7a Renamed variable 2020-12-30 22:46:49 +11:00
Eric Soroos
250e42f7f8 Bad Rebase 2020-12-30 11:07:58 +01:00
Alexander
1ff61bcaa6 use offset for all binary input functions instead of slicing 2020-12-30 19:10:50 +11:00
Alexander
3757b8c748 remove extra i8 calls where input is proved bytes[] or int 2020-12-30 19:04:11 +11:00
Andrew Murray
6b21a96578 Changed readcount so that _TIFFSetGetType can identify the type 2020-12-30 11:57:05 +11:00
Hugo van Kemenade
85d61ca7d5
Merge pull request #5139 from radarhere/repr_png
Added exception explaining that _repr_png_ saves to PNG
2020-12-29 12:43:22 +02:00
Hugo van Kemenade
cd446e6088
Merge pull request #5125 from radarhere/disposal_method
Use previous disposal method in GIF load_end
2020-12-29 12:26:14 +02:00
Hugo van Kemenade
5c64438792
Merge pull request #5090 from radarhere/valueerror
Do not catch a ValueError only to raise another
2020-12-29 12:19:16 +02:00
Hugo van Kemenade
25500e83bc
Merge pull request #5089 from radarhere/putpalette_rgba
Allow putpalette to accept 1024 integers to include alpha values
2020-12-29 12:17:50 +02:00
Eric Soroos
a39d7c4fcf Fix OOB Read in tif_dirinfo.c
==3330==    at 0xBD4110C: _TIFFSetupFields (tif_dirinfo.c:327)

Passing in a stack allocated array is going to fail, as a reference
is retained to the name and used later when flushing the Tiff to
the file.
2020-12-28 15:00:48 +01:00
UrielMaD
19bac31804 XMP feature added 2020-12-27 22:28:03 -06:00
UrielMaD
7968279c13 XMP feature added 2020-12-27 22:24:38 -06:00
UrielMaD
2f29f1306f XMP feature added 2020-12-27 22:01:27 -06:00
UrielMaD
762235fb06 XMP feature added 2020-12-27 19:01:15 -06:00
UrielMaD
9947655b93 XMP feature added 2020-12-27 18:46:07 -06:00
UrielMaD
50e88764e8 XMP feature added 2020-12-27 18:39:16 -06:00
UrielMaD
eeee980cf7 XMP feature added 2020-12-27 18:36:13 -06:00
Eric Soroos
d96945b7c8 Fix Out of bounds read when saving GIF of xsize=1 2020-12-27 16:01:26 +01:00
Andrew Murray
00df94bb78 Removed unused variable 2020-12-27 16:16:55 +11:00
Andrew Murray
fdce845364 Added exception explaining that _repr_png_ saves to PNG 2020-12-27 15:36:16 +11:00
Andrew Murray
cf530b8d9c
Merge pull request #5111 from cgohlke/patch-3
Fix dereferencing of potential null pointers
2020-12-27 12:21:09 +11:00
Andrew Murray
51b8137924
Changed style for consistency 2020-12-26 21:49:40 +11:00
Hugo van Kemenade
2635a4859d
Merge pull request #5127 from radarhere/warnings
Fixed warnings assigning to "unsigned char *" from "char *"
2020-12-24 10:50:24 +02:00
Andrew Murray
e37a8a263d
Merge pull request #4568 from ziplantil/ico-append-images
Add append_images support for ICO
2020-12-24 11:10:33 +11:00
Andrew Murray
8eaf9e7cb7 Fixed warning assigning to "unsigned char *" from "char *" 2020-12-24 10:47:06 +11:00
Andrew Murray
5e4e0fa6ee Use disposal settings from previous frame 2020-12-24 09:55:22 +11:00
Andrew Murray
9940c84b08 Use previous disposal method in load_end 2020-12-23 13:22:53 +11:00
Andrew Murray
36dc83e3ac Fixed comparison between unsigned int and int 2020-12-22 16:07:32 +11:00
Andrew Murray
26e5929617 Fixed comparison between int and unsigned long 2020-12-22 16:06:44 +11:00
Andrew Murray
8794610c76 Block TIFFTAG_SUBIFD 2020-12-22 11:38:02 +11:00
Andrew Murray
0eddc82157
Merge pull request #5108 from cgohlke/patch-1
Fix dereferencing potential null pointer
2020-12-22 08:26:48 +11:00
Hugo van Kemenade
396b329507
Merge pull request #5113 from radarhere/memory
Replaced PyErr_NoMemory with ImagingError_MemoryError
2020-12-20 22:17:10 +02:00
Christoph Gohlke
d1e706d756
return ImagingError_MemoryError 2020-12-19 19:42:29 -08:00
Christoph Gohlke
fd14616dbb
Return ImagingError_MemoryError 2020-12-19 19:37:05 -08:00
Christoph Gohlke
15dd7aef9f
Return ImagingError_MemoryError 2020-12-19 19:35:21 -08:00
Andrew Murray
83d82ae150
Merge pull request #5098 from hugovk/deprecate-freetype
Deprecate FreeType 2.7
2020-12-20 13:35:41 +11:00
Andrew Murray
b7fb39fff8 Use ImagingError_MemoryError NULL return value 2020-12-20 13:00:16 +11:00
Andrew Murray
75542fea6d Replaced PyErr_NoMemory with ImagingError_MemoryError 2020-12-20 13:00:10 +11:00
Christoph Gohlke
fd4b0609ef
Fix dereferencing of potential null pointers 2020-12-19 15:58:25 -08:00
Christoph Gohlke
c1adae6f70
Remove duplicate code 2020-12-19 15:07:51 -08:00
Christoph Gohlke
7673cb7549
Fix dereferencing potential null pointer 2020-12-19 14:57:55 -08:00
Andrew Murray
043d8dac0b Do not require packaging just for a DeprecationWarning 2020-12-18 23:42:16 +11:00
Hugo van Kemenade
27bf17009c Deprecate FreeType 2.7, to be removed in Pillow 9 (2022-01-02) 2020-12-17 10:28:06 +02:00
Andrew Murray
ff0ad9af34 Do not catch a ValueError only to raise another 2020-12-12 23:36:57 +11:00
Andrew Murray
a666c91e10 Allow putpalette to accept 1024 integers to include alpha values 2020-12-12 14:12:30 +11:00
Hugo van Kemenade
0893f502c3 Document when deprecations will be removed [CI skip] 2020-12-10 14:32:43 +02:00
Hugo van Kemenade
2b87ccae89
Merge pull request #5026 from radarhere/unused
Removed unused C methods
2020-11-18 14:46:36 +02:00
Andrew Murray
4f0b9185a3 Fixed link formatting 2020-11-14 08:41:44 +11:00
Andrew Murray
7e2015c75f init() if one of the formats is unrecognised 2020-11-11 21:05:57 +11:00
Andrew Murray
2ae597c357 Renamed variable to match IcnsImagePlugin 2020-11-04 22:42:53 +11:00
Andrew Murray
8593e17b05 Removed unused methods 2020-11-02 20:58:51 +11:00
Andrew Murray
732bf12fd6
Merge branch 'master' into 3.10 2020-10-31 15:16:46 +11:00
Hugo van Kemenade
b074d87179
Merge pull request #4760 from qiankanglai/dds-rgba8888
Support raw rgba8888 for dds
2020-10-15 08:10:01 +03:00
nulano
26cfe04fea fix PY_SSIZE_T_CLEAN in display.c 2020-10-14 21:12:00 +01:00
Hugo van Kemenade
7a20ef7818 8.1.0.dev0 version bump 2020-10-14 21:23:45 +03:00
Hugo van Kemenade
235a7d6d7d 8.0.0 version bump 2020-10-14 19:02:53 +03:00
Hugo van Kemenade
1cb3e2f742
Merge pull request #4918 from gofr/4825-jpeg-16-bit-qt 2020-10-14 17:58:12 +03:00
Hugo van Kemenade
04f1b38fd1
Merge pull request #4979 from radarhere/ifd
Added reading of IFD tag type
2020-10-14 17:43:41 +03:00
Hugo van Kemenade
14643d5746
Merge pull request #4806 from nqbit/msan_bug
Initialize offset memory for PyImagingPhotoPut
2020-10-14 17:38:17 +03:00
Hugo van Kemenade
e58baa0c09
Merge pull request #4756 from nulano/warn-tiff
Fix TiffDecode comparison warnings
2020-10-14 17:33:05 +03:00
Hugo van Kemenade
2c0aa5d0b8
Merge pull request #4923 from ax3l/fix-imagingHinclude 2020-10-14 16:33:42 +03:00
Andrew Murray
1a3367400c Added reading of IFD tag type 2020-10-14 23:37:54 +11:00
Hugo van Kemenade
f9852c0381
Merge branch 'master' into fix-imagingHinclude 2020-10-14 14:50:36 +03:00
Axel Huebl
115add2fa0
do not add extra include directories (#3)
Co-authored-by: nulano <nulano@nulano.eu>
2020-10-14 01:59:34 -07:00
nulano
e65dd04a63 avoid using pkg_resources in PIL.features.pilinfo 2020-10-13 17:52:26 +01:00
Hugo van Kemenade
9a93f6ee45
Merge pull request #4959 from nulano/anchor-part3 2020-10-12 19:27:08 +03:00
Hugo van Kemenade
c7b0fe1bca
Merge pull request #4963 from nulano/implicit-function 2020-10-12 19:23:40 +03:00
nulano
b49ebad5f5 Merge remote-tracking branch 'upstream/master' into anchor-part3 2020-10-12 16:14:00 +01:00
nulano
d7a08cbd15 add color support to new text measuring functions 2020-10-12 16:05:19 +01:00