Commit Graph

2255 Commits

Author SHA1 Message Date
Miloš Komarčević
1c4deefe11 Make strip calculation more readable 2021-06-12 11:49:20 +10:00
Miloš Komarčević
c949d54605 Fix lint errors 2021-06-12 11:49:20 +10:00
Miloš Komarčević
7752fb5131 Limit TIFF strip size when saving with libtiff 2021-06-12 11:49:20 +10:00
Andrew Murray
e00af259d8 Use PRIu64 to fix format warning 2021-06-11 18:27:36 +10:00
Hugo van Kemenade
101887360c
Merge pull request #5501 from radarhere/dds_bc5 2021-06-11 10:34:19 +03:00
Hugo van Kemenade
a9b0adc57f
Merge pull request #5510 from radarhere/textbbox 2021-06-10 17:46:32 +03:00
Andrew Murray
5b0a63f76d Updated declaration to match definition 2021-06-10 19:01:12 +10:00
Hugo van Kemenade
2a7eb5415e
Merge pull request #5513 from radarhere/ico_bmp
Added ICO saving in BMP format
2021-06-06 18:12:33 +03:00
Hugo van Kemenade
87dca4f477
Merge pull request #5493 from radarhere/png_load_end
Ensure PNG seeks to end of previous chunk at start of load_end
2021-06-06 10:35:04 +03:00
Hugo van Kemenade
1ac7bd9f87
Merge pull request #5473 from radarhere/tiff_seek
Do not allow TIFF to seek to a past frame
2021-06-05 18:49:34 +03:00
Andrew Murray
2c9a9b3529 Added ICO saving in BMP format 2021-05-27 06:21:28 +10:00
Andrew Murray
10d8800ee7
Merge pull request #5507 from mconst/master
Avoid race condition when displaying images with eog
2021-05-25 22:36:39 +10:00
Andrew Murray
362d504011 Raise an error if textbbox is used without a FreeTypeFont 2021-05-25 20:45:38 +10:00
Hugo van Kemenade
affa059e95
Merge pull request #5504 from radarhere/tuple_size
Added specific error messages when ink has incorrect number of bands
2021-05-23 17:18:38 +03:00
Michael Constant
5c8aa277ce Avoid race condition when displaying images with eog
Image.show() expects its display command to run synchronously, but eog
is asynchronous if there's another instance already running -- it just
asks the other instance to open the file and then immediately exits.
This causes intermittent failures where the file gets deleted before
the running eog instance manages to open it.

Fix this by using the -n option, so eog starts a new instance each time
instead of trying to reuse an existing one.
2021-05-23 01:10:41 -07:00
Hugo van Kemenade
3cbf4d5ef7
Merge pull request #5379 from radarhere/numpy
Allow converting an image to a numpy array to raise errors
2021-05-20 15:09:02 +03:00
Hugo van Kemenade
60d6dc7869
Merge pull request #5488 from radarhere/args
Use METH_NOARGS when no arguments are required
2021-05-19 23:43:29 +03:00
Andrew Murray
8099d01349 Fixed typo 2021-05-19 23:32:00 +10:00
Andrew Murray
3b4db88202 Added BC5_SNORM reading when FourCC is DX10 2021-05-19 22:19:19 +10:00
Andrew Murray
22fb2dbd29 Simplified code 2021-05-19 21:57:40 +10:00
Andrew Murray
f59ff6d55b Read BC5_TYPELESS as BC5_UNORM 2021-05-19 21:16:12 +10:00
Andrew Murray
a1412681ff Added specific error messages when ink has incorrect number of bands 2021-05-19 20:19:57 +10:00
Andrew Murray
ff0c0afb2c Use PyTuple_GET_SIZE since variable is known to be a tuple 2021-05-19 19:51:45 +10:00
Hugo van Kemenade
16b9cadd41
Merge pull request #5495 from radarhere/tiff_tags
Added CFAPattern, ExifVersion and FlashpixVersion UNDEFINED tags
2021-05-19 00:31:41 +03:00
Andrew Murray
2e7f40e0b8 Added BC5_SNORM reading 2021-05-18 17:44:21 +10:00
Andrew Murray
68ac6d151e Added BC5_UNORM reading 2021-05-17 18:57:23 +10:00
Hugo van Kemenade
a72ae6823c
Merge pull request #5476 from radarhere/dpi_rounding 2021-05-16 20:00:10 +03:00
Hugo van Kemenade
d53a664866
Merge pull request #5470 from radarhere/wmf_dpi_rounding
Removed WMF DPI rounding
2021-05-16 19:57:14 +03:00
Andrew Murray
78406ed1ff
Merge pull request #5460 from xtsm/ellipse
Remove spikes when drawing thin pieslices
2021-05-14 23:37:11 +10:00
Hugo van Kemenade
f02739715d
Merge pull request #5452 from radarhere/missing_samplesperpixel
Updated default value for SAMPLESPERPIXEL TIFF tag
2021-05-14 16:17:34 +03:00
Andrew Murray
c8802030cf Added CFAPattern, ExifVersion and FlashpixVersion UNDEFINED tags 2021-05-14 18:50:56 +10:00
Andrew Murray
bf97a92bc6 Ensure PNG seeks to end of previous chunk at start of load_end 2021-05-14 13:18:49 +10:00
Andrew Murray
29c6f53e99 Use METH_NOARGS when no arguments are required 2021-05-11 20:19:17 +10:00
Andrew Murray
f2ee5d6697 Use METH_VARARGS flags 2021-05-11 20:16:44 +10:00
Alexander Karpinsky
2fa6537df3 HTTP link is not valid (wrong redirect) 2021-05-10 14:14:36 +03:00
Andrew Murray
c04260b3f5 Convert to float for comparison with float in IFDRational __eq__ 2021-05-10 08:36:45 +10:00
Andrew Murray
9bbe53a01d
Merge pull request #5446 from radarhere/tiff_dpi_rounding
Removed TIFF DPI rounding
2021-05-10 08:34:05 +10:00
Andrew Murray
43faa38952
Wrapped tuples in brackets
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2021-05-10 07:54:47 +10:00
Hugo van Kemenade
3942eaec18
Merge pull request #5471 from radarhere/webp_error_code 2021-05-09 23:18:49 +03:00
Hugo van Kemenade
c1e1aeea87
Merge pull request #5458 from radarhere/tiff_deprecations 2021-05-09 23:14:22 +03:00
Hugo van Kemenade
649eaae360
Merge pull request #5434 from radarhere/text_alpha 2021-05-09 22:17:58 +03:00
Hugo van Kemenade
23f848ea54
Merge pull request #5443 from radarhere/fp 2021-05-09 20:39:44 +03:00
Andrew Murray
3795772187 Use python3 2021-05-08 12:37:06 +10:00
Andrew Murray
9ac888262a Do not allow TIFF to seek to a past frame 2021-05-08 00:25:47 +10:00
Andrew Murray
18e204df05 Removed DPI rounding from JPEG loading 2021-05-07 21:23:29 +10:00
Andrew Murray
0de3beaeaf Removed DPI rounding when BMP loading 2021-05-07 20:50:18 +10:00
Andrew Murray
9d72542c08 Removed DPI rounding from PNG loading 2021-05-07 20:50:01 +10:00
Andrew Murray
4080f160b6 Include code in WebP error 2021-05-07 00:12:03 +10:00
Andrew Murray
b9c571a328 Removed WMF DPI rounding 2021-05-06 20:08:54 +10:00
Andrew Murray
edc2771909 Corrected code references in docstring 2021-05-05 23:52:59 +10:00
Andrew Murray
2bc754e102
Merge pull request #5462 from adrian-the-git/master
Fix build with libraqm < 0.7.0
2021-05-05 18:02:32 +10:00
Andrew Murray
0985de21af
Added comment
Co-authored-by: Ondrej Baranovič <nulano@nulano.eu>
2021-05-05 15:03:00 +10:00
Andrew Murray
6fc039a21c Updated default value for SAMPLESPERPIXEL tag 2021-05-04 16:50:12 +10:00
Hugo van Kemenade
20b8a83773
Merge pull request #5437 from radarhere/stdout 2021-05-03 11:57:46 +03:00
Andrew Murray
0f68e63793 Allow for sys.stdout.buffer to be missing 2021-05-03 18:07:05 +10:00
Adrian Carpenter
b2f92df1ba Fix build with libraqm < 0.7.0
gcc's cpp doesn't short-circuit when RAQM_VERSION_ATLEAST is undefined
so building fails on systems with old libraqm (e.g. Debian 10 for
raspberry pi where wheels w/libraqm support may not be available).
RAQM_VERSION_ATLEAST was introduced with 0.7.0, so the test is
effectively equivalent.
2021-05-02 23:21:29 -07:00
Hugo van Kemenade
d2f2fbacaa
Merge pull request #5426 from radarhere/undefined_zero
Fixed UNDEFINED TIFF tag of length 0 being changed in roundtrip
2021-05-03 09:07:32 +03:00
Hugo van Kemenade
2125ce8331
Merge pull request #5445 from radarhere/freetype_version
Fixed bug when checking FreeType2 version if it is not installed
2021-05-02 17:24:26 +03:00
Stanislau Tsitsianok
0c9ffcfa14
Fixed #5432 2021-05-02 17:12:07 +03:00
Hugo van Kemenade
0836e388e8
Merge pull request #5459 from radarhere/pdf_float
Do not round dimensions when saving PDF
2021-05-02 11:16:34 +03:00
Hugo van Kemenade
8a8ac60817
Merge pull request #5417 from radarhere/contain
Added ImageOps contain()
2021-05-01 18:44:37 +03:00
Andrew Murray
38a520c109 Updated docstrings 2021-05-01 22:35:53 +10:00
Andrew Murray
91b3a9d6a1
Updated docstring
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2021-05-01 21:56:49 +10:00
Andrew Murray
bc935f9970 Do not round dimensions when saving PDF 2021-05-01 12:13:09 +10:00
Andrew Murray
11d1458316 Replaced uint16 and uint32 with uint16_t and uint32_t to resolve TIFF deprecations 2021-05-01 00:51:39 +10:00
Andrew Murray
1c617a9877 Clarified error message 2021-04-30 19:36:30 +10:00
Andrew Murray
ca3ad49de3 Fixed bug when checking FreeType2 version if it is not installed 2021-04-29 23:10:08 +10:00
Andrew Murray
8bc19ac78c Do not alter pixels outside mask when drawing text on an image with transparency 2021-04-29 23:08:25 +10:00
Andrew Murray
b78cf8cd75 Added state methods to allow pickling of IFDRational 2021-04-29 22:47:44 +10:00
Andrew Murray
537cd7a82e Removed TIFF DPI rounding 2021-04-29 22:47:44 +10:00
Andrew Murray
fd299e36ce Reset handle when seeking backwards as well 2021-04-29 22:47:20 +10:00
Andrew Murray
ce3d69baf9 Simplified code by writing bytes instead of using wrapping to write strings 2021-04-29 21:35:57 +10:00
Andrew Murray
9c06ce044c Changed PSDraw default from sys.stdout to sys.stdout.buffer 2021-04-29 21:35:57 +10:00
Andrew Murray
fae9afe351 Replace sys.stdout with sys.stdout.buffer when saving 2021-04-29 21:35:57 +10:00
Andrew Murray
622ba122ce Added Exif load_from_fp method to get TIFF tag_v2 data 2021-04-29 21:21:55 +10:00
Andrew Murray
976d9fa347 Fixed UNDEFINED TIFF tag of length 0 being changed in roundtrip 2021-04-29 21:21:09 +10:00
Andrew Murray
2c03800824 Changed default "method" value to 4 2021-04-28 18:20:44 +10:00
Hugo van Kemenade
dc817ead76
Merge pull request #5430 from radarhere/pdf_1
Switched to saving 1-bit PDFs with DCTDecode
2021-04-25 15:29:34 +03:00
Hugo van Kemenade
6461dd63b3
Merge pull request #5429 from radarhere/ico
Use bpp from ICO header
2021-04-25 12:07:38 +03:00
Hugo van Kemenade
d3a3b6dddb
Merge pull request #5408 from radarhere/indexerror
Corrected JPEG APP14 transform value
2021-04-25 11:36:40 +03:00
Hugo van Kemenade
23efd39b99
Merge pull request #5425 from radarhere/iptc
Changed TIFF tag 33723 length to 1
2021-04-25 11:23:52 +03:00
Hugo van Kemenade
75f385ffaa
Merge pull request #5423 from radarhere/ico_documentation
Added info about mode when saving ICO for Windows
2021-04-25 11:14:31 +03:00
Hugo van Kemenade
b09a9210d4
Merge pull request #5414 from radarhere/morph
Changed ImageMorph incorrect mode errors to ValueError
2021-04-23 16:52:55 +03:00
Andrew Murray
ac1359ed5d
Merge pull request #5419 from gladiusglad/exiftags
Add EXIF tags specified in EXIF 2.32
2021-04-23 07:52:18 +10:00
Andrew Murray
d62be3e354 Switched to saving 1-bit PDFs with DCTDecode 2021-04-22 22:16:21 +10:00
Andrew Murray
900b849aa8 Use bpp from header 2021-04-22 21:18:21 +10:00
Andrew Murray
6b098a2c34 Changed TIFF tag 33723 length to 1 2021-04-21 22:37:47 +10:00
Andrew Murray
4b066e66da Added info about mode when saving for Windows [ci skip] 2021-04-20 23:58:52 +10:00
Hugo van Kemenade
bb5a34fcb0
Merge pull request #5391 from radarhere/gif_disposal
Treat previous contents of first GIF frame as transparent
2021-04-20 13:23:11 +03:00
gladiusglad
72d7d1d0ea Add EXIF tags which are part of the EXIF 2.32 specification 2021-04-20 11:01:46 +07:00
Hugo van Kemenade
9e73f7a324
Merge pull request #5374 from radarhere/static
Changed quantize and quantize2 to static
2021-04-19 17:58:35 +03:00
Hugo van Kemenade
d2e73b0304
Merge pull request #5411 from radarhere/resize_default
For special image modes, revert default resize resampling to NEAREST
2021-04-19 17:57:46 +03:00
Andrew Murray
40eceec70d Added contain method 2021-04-19 20:12:52 +10:00
Hugo van Kemenade
fc08a72600
Merge pull request #5400 from radarhere/mapdepth_16
Changed mode for TGA 16-bit palette to BGR;15
2021-04-18 13:00:29 +03:00
Hugo van Kemenade
50fdc151ea
Merge pull request #5396 from radarhere/mapdepth
TGA color map entry size is only 1 byte
2021-04-18 12:57:58 +03:00
Andrew Murray
7e4fd9d845 Changed incorrect mode errors to ValueError 2021-04-18 14:47:05 +10:00
Hugo van Kemenade
197673b9b2
Merge pull request #4996 from nulano/jp2-decode-subsample 2021-04-17 21:42:17 +03:00
Andrew Murray
7c0344bb99 For special image modes, revert default resize resampling to NEAREST 2021-04-17 12:18:42 +10:00
Andrew Murray
4351c37fc4 Corrected adobe_transform value 2021-04-15 21:49:51 +10:00
Andrew Murray
7a4bf3df0f Changed exception type to be more specific 2021-04-15 20:55:45 +10:00
Andrew Murray
1e074f5040
Merge pull request #4144 from jansol/master
Stop decoding BC1 punchthrough alpha in BC2&3
2021-04-15 20:24:52 +10:00
Hugo van Kemenade
85d251b479
Merge pull request #5384 from radarhere/core_tags 2021-04-15 13:10:25 +03:00
Andrew Murray
a47072bcbe Treat previous contents of first frame as transparent 2021-04-15 19:01:12 +10:00
Hugo van Kemenade
2f5687f886
Merge pull request #5390 from radarhere/gif_missing_background
Use zero if GIF background color index is missing
2021-04-15 11:57:31 +03:00
Hugo van Kemenade
0cc2943aef
Merge pull request #5386 from radarhere/previous_frame_loaded
Fixed ensuring that GIF previous frame was loaded
2021-04-15 10:47:44 +03:00
Andrew Murray
4dde8109d7 Resolved FIXME by reading mandatory FITS header items 2021-04-14 22:48:27 +10:00
Andrew Murray
35107e9637 Changed failure to create decoder to OSError for Parser 2021-04-14 20:01:56 +10:00
Andrew Murray
2cb1d056c0 Merge branch 'master' into jp2-decode-subsample 2021-04-11 12:49:10 +10:00
Andrew Murray
8be655bec6 Merge branch 'master' into core_tags 2021-04-11 12:46:37 +10:00
Andrew Murray
c5f886958a Merge branch 'master' into quant 2021-04-11 12:41:48 +10:00
Andrew Murray
5491bd5eda Merge parallel horizontal edges in ImagingDrawPolygon 2021-04-11 12:41:32 +10:00
Andrew Murray
65cdc21105 Changed quantize and quantize2 to static 2021-04-11 12:40:59 +10:00
wiredfool
fe668716ed
Merge pull request #5397 from wiredfool/valgrind_fixes
Valgrind fixes
2021-04-10 19:15:17 +01:00
nulano
ee41a133dd formatting 2021-04-10 20:03:46 +02:00
Andrew Murray
fc64064387 Changed mode for 16-bit palette to BGR;15 2021-04-10 22:11:20 +10:00
Eric Soroos
441e6426ae Initialize buffer with 0, fixes valgrind undefined behavior issues 2021-04-09 13:41:23 +02:00
Andrew Murray
04df6e3bf1 mapdepth is only 1 byte 2021-04-09 21:38:28 +10:00
Andrew Murray
3cb2413066 Use zero if background color index is missing 2021-04-08 08:04:20 +10:00
Hugo van Kemenade
75c111903c
Merge pull request #5382 from radarhere/rounded_rectangle
Round down the radius in rounded_rectangle
2021-04-07 19:31:19 +03:00
Andrew Murray
d661e438f6 Fixed ensuring that previous frame was loaded 2021-04-06 19:31:51 +10:00
Andrew Murray
9d489f69ae Removed duplicate word in error message 2021-04-05 19:34:00 +10:00
Andrew Murray
56dfc4a956 Added 301 and 532 to core tags 2021-04-05 19:01:13 +10:00
Andrew Murray
d06871d543 Set mode of three channel uncompressed RGB data to RGB 2021-04-05 17:58:02 +10:00
Andrew Murray
6f87faf0ee Reversed rawmode for uncompressed RGB data 2021-04-05 17:54:34 +10:00
Andrew Murray
92edc29439 Round down the radius in rounded_rectangle 2021-04-05 08:54:06 +10:00
Andrew Murray
60da129d4b Replaced register_open lambdas with _accept method for consistency 2021-04-03 21:51:28 +11:00
Andrew Murray
d4f9c6e082 Renamed register_open accept methods for consistency 2021-04-03 21:51:23 +11:00
Andrew Murray
77a8a53a94 Allow converting an image to a numpy array to raise errors 2021-04-03 13:20:58 +11:00
Andrew Murray
39fe85f308
Merge branch 'master' into jp2-decode-subsample 2021-04-03 09:26:55 +11:00
Andrew Murray
a69430047b Renamed function 2021-04-02 21:06:10 +11:00
Andrew Murray
6764650e2a Reduced memory usage 2021-04-02 20:48:06 +11:00
Hugo van Kemenade
330f77ae7a 8.3.0.dev0 version bump 2021-04-01 23:56:43 +03:00
Hugo van Kemenade
e0e353c0ef 8.2.0 version bump 2021-04-01 20:58:27 +03:00
Andrew Murray
6541bd7cb5 Added second attribute to avoid unstable nature of qsort 2021-04-02 04:07:18 +11:00
Andrew Murray
7387ec23ac Revert "Removed return value of build_distance_tables"
This reverts commit a4a38b805b.
2021-04-02 04:07:18 +11:00
Hugo van Kemenade
694c84f88f
Fix typo [ci skip]
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-04-01 20:00:13 +03:00
Hugo van Kemenade
8febdad8dd Review, typos and lint 2021-04-01 17:41:46 +03:00
Eric Soroos
496245aa43 Fix BLP DOS -- CVE-2021-28678
* BlpImagePlugin did not properly check that reads after jumping to
  file offsets returned data. This could lead to a DOS where the
  decoder could be run a large number of times on empty data
* This dates to Pillow 5.1.0
2021-04-01 17:17:35 +03:00
Eric Soroos
22e9bee4ef Fix DOS in PSDImagePlugin -- CVE-2021-28675
* PSDImagePlugin did not sanity check the number of input layers and
  vs the size of the data block, this could lead to a DOS on
  Image.open prior to Image.load.
* This issue dates to the PIL fork
2021-04-01 17:17:31 +03:00
Eric Soroos
ba65f0b08e Fix Memory DOS in ImageFont
* A corrupt or specially crafted TTF font could have font metrics that
  lead to unreasonably large sizes when rendering text in
  font. ImageFont.py did not check the image size before allocating
  memory for it.
* Found with oss-fuzz
* This dates from the PIL fork
2021-04-01 17:17:27 +03:00
Eric Soroos
bb6c11fb88 Fix FLI DOS -- CVE-2021-28676
* FliDecode did not properly check that the block advance was
  non-zero, potentally leading to an infinite loop on load.
* This dates to the PIL Fork
* Found with oss-fuzz
2021-04-01 17:17:23 +03:00
Eric Soroos
5a5e6db0ab Fix EPS DOS on _open -- CVE-2021-28677
* The readline used in EPS has to deal with any combination of \r and
  \n as line endings. It used an accidentally quadratic method of
  accumulating lines while looking for a line ending.
* A malicious EPS file could use this to perform a DOS of Pillow in
  the open phase, before an image was accepted for opening.
* This dates to the PIL Fork
2021-04-01 17:17:18 +03:00
Eric Soroos
3bf5eddb89 Fix OOB Read in Jpeg2KDecode CVE-2021-25287,CVE-2021-25288
* For J2k images with multiple bands, it's legal in to have different
  widths for each band, e.g. 1 byte for L, 4 bytes for A
* This dates to Pillow 2.4.0
2021-04-01 17:17:13 +03:00
Andrew Murray
e12d5042ad Adjusted docstring 2021-04-01 22:28:42 +11:00
Andrew Murray
2c8684c525 Moved getxmp() into JpegImageFile 2021-04-01 22:28:37 +11:00
Hugo van Kemenade
6812205f18
Merge pull request #5144 from UrielMaD/feature_xmp 2021-04-01 12:44:47 +03:00
Hugo van Kemenade
8c852e44f0
Merge pull request #5349 from latosha-maltba/master 2021-04-01 11:55:37 +03:00
Eric Soroos
87934e22d0 Fix for crash-0da0 2021-03-31 23:24:30 +02:00
Eric Soroos
53c80281d7 fix for crash-8115 2021-03-31 22:23:57 +02:00
Eric Soroos
45530d5ce1 fixes crash-74d2 2021-03-31 22:23:57 +02:00
wiredfool
4044ecc1fb
Merge pull request #5366 from kkopachev/kk-remove-extra-check
Remove redundant check (addition to #5364)
2021-03-31 20:54:07 +01:00
Hugo van Kemenade
c54a7bb031
Merge pull request #5333 from radarhere/gif_frame_transparency 2021-03-31 18:08:11 +03:00
Hugo van Kemenade
54e9f3bd0f
Merge pull request #5291 from raygard/giflzw 2021-03-31 17:58:44 +03:00
Hugo van Kemenade
727533148e
Merge pull request #5282 from radarhere/quantize
Set all transparent colors to be equal in quantize()
2021-03-31 17:58:21 +03:00
Hugo van Kemenade
683affa29c
Merge pull request #5206 from radarhere/numpy 2021-03-31 17:46:32 +03:00
Hugo van Kemenade
06dfbb8e3e
Merge branch 'master' into giflzw 2021-03-31 16:45:02 +03:00
Andrew Murray
80878fa4c6 Merge branch 'master' into modes 2021-03-31 18:58:11 +11:00
Hugo van Kemenade
d3ad66d851
Merge pull request #5332 from radarhere/typo
Corrected grammar
2021-03-31 09:40:41 +03:00
Ray Gardner
306d030fce Add comment to reference GIF LZW specification. 2021-03-30 17:35:21 -06:00
Hugo van Kemenade
e08474afa3
Merge pull request #5365 from nulano/fribidi-notes 2021-03-30 21:00:09 +03:00
Andrew Murray
b0b4fee796
Merge pull request #5350 from elejke/master
Add preserve_tone option to autocontrast
2021-03-30 07:59:57 +11:00
Konstantin Kopachev
19a815dd73
Remove redundant check
It's duplicated inside following call of TIFFReadTile
2021-03-29 11:27:50 -07:00
nulano
4f61637e7f document libraqm/fribidi linking, support fribidi-0.dll on Windows 2021-03-29 17:45:12 +02:00
Andrew Murray
04922cba2b
Merge branch 'master' into patch-3 2021-03-29 21:30:53 +11:00
Andrew Murray
0a56d9b287
Merge branch 'master' into simplified 2021-03-29 19:37:55 +11:00
Hugo van Kemenade
b3a1de94d0
Merge pull request #5323 from radarhere/imagefilter_numpy
Only import numpy when necessary
2021-03-28 19:11:01 +03:00
wiredfool
9a683db339
Merge pull request #5274 from radarhere/gradient
Fixed linear_gradient and radial_gradient I and F modes
2021-03-28 14:35:22 +01:00
Konstantin Kopachev
52ecf1b142 Stop guessing strip size and pass expected size 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
ab24c98491 Add sanity check for memory overruns 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
1c295bf43c Check for dimensions and sizes to fit into int 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
e438046201 Refactor into smaller functions 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
4dd288c66c unify reading of YCbCr Tiffs 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
4c2dfadf26 Swap pixel values on Big Endian 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
169bb4842f only use TIFFReadRGBA* in case of o_jpeg compression 2021-03-28 15:03:37 +02:00
Eric Soroos
f2020eeab4 UINT8 -> int for plane 2021-03-28 15:03:37 +02:00
Eric Soroos
b1d3f0d5c2 not 2021-03-28 15:03:37 +02:00
Eric Soroos
c9ea87ecfd Use flag instead of recalculating 2021-03-28 15:03:37 +02:00
Eric Soroos
fda638befe Planes should be int, not uint 2021-03-28 15:03:37 +02:00
nulano
daf7b6546e remove double pointer 2021-03-28 15:03:37 +02:00
nulano
a921c01102 correct TIFFTAG_PLANARCONFIG size 2021-03-28 15:03:37 +02:00
Eric Soroos
77a1a9aba3 initialize the unpackers 2021-03-28 15:03:37 +02:00
Eric Soroos
64500434c2 Implementation for PlanarConfiguration=2 Tiffs, manually merged from f566c8a 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
0018685a8e Add Tests and support for Planar Tiff Images 2021-03-28 15:03:37 +02:00
Hugo van Kemenade
e405ab300b
Merge pull request #5351 from radarhere/categories 2021-03-28 14:34:50 +03:00
Andrew Murray
f799915d6f
Merge pull request #5304 from nulano/5300
Do not premultiply alpha when resizing with Image.NEAREST resampling
2021-03-28 16:02:01 +11:00
Andrew Murray
71cd97a519 Added deprecation warnings 2021-03-28 15:51:28 +11:00
Hugo van Kemenade
5e1d304769
Merge pull request #5353 from radarhere/quantize_attributes
Use quantization method attributes
2021-03-27 20:01:49 +02:00
wiredfool
3addd7df4e
Merge pull request #5062 from nulano/fribidi-link
Dynamically link FriBiDi instead of Raqm
2021-03-27 16:29:04 +00:00
Andrew Murray
a4a38b805b Removed return value of build_distance_tables 2021-03-27 14:47:11 +11:00
Ray Gardner
5390786c65 Add braces to if -- conform with Pillow style. 2021-03-25 17:22:11 -06:00
Ray Gardner
0acf3514a1 Modify GifEncode.c and Gif.h to use LZW encoding 2021-03-25 17:22:10 -06:00
nulano
c718cc6c94 avoid unused variable warnings 2021-03-25 00:41:05 +01:00
nulano
5e61c1842f fix support for old versions of Raqm 2021-03-25 00:41:05 +01:00
nulano
49fa3656b1 do not premultiply alpha when resizing with Image.NEAREST resampling 2021-03-23 13:16:20 +01:00
elejke
2c973b4cca versionadded version fixed 2021-03-23 13:57:51 +03:00
elejke
9b8f7c2a8f versionadded directive and releasenotes added 2021-03-23 13:56:51 +03:00
Piolie
9c2cbcf452
Keep case consistency in error messages
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-03-22 13:06:16 -03:00
Andrew Murray
4e0bc3bab6 Use quantization method attributes 2021-03-22 19:44:56 +11:00
Andrew Murray
0ff9879171 Document supported quantization methods for RGBA images 2021-03-22 19:21:31 +11:00
Andrew Murray
ab56edb49f Documented default quantization method 2021-03-22 19:18:36 +11:00
elejke
c585e6ab6b Add preserve_tone option to autocontrast 2021-03-21 21:15:13 +03:00
Hugo van Kemenade
ddcc936643
Merge pull request #5330 from radarhere/png_plte
Allow fewer PNG palette entries than the bit depth maximum when saving
2021-03-21 17:31:35 +02:00
Latosha Maltba
bb88d8d017 Add support to use GraphicsMagick's "gm display" as viewer 2021-03-21 14:36:18 +00:00
Hugo van Kemenade
688e6f163f
Merge pull request #5338 from radarhere/webp_save_duration
Use duration from info dictionary when saving WebP
2021-03-21 11:35:28 +02:00
Andrew Murray
754752e78f Allow fewer palette entries than the bit depth maximum 2021-03-21 09:22:01 +11:00
Hugo van Kemenade
82b2f4aa36
Merge pull request #5326 from radarhere/gif_disposal
Improved efficiency when creating GIF disposal images
2021-03-20 12:45:34 +02:00
Hugo van Kemenade
5a209081b2
Merge pull request #4947 from radarhere/exif 2021-03-19 21:26:33 +02:00
Andrew Murray
298600381f Replaced tiff_deflate with tiff_adobe_deflate compression when saving 2021-03-19 12:00:29 +11:00
Andrew Murray
1d8c5a820c Use duration from info dictionary when saving 2021-03-17 20:37:31 +11:00
Andrew Murray
b216b367ac Only set info transparency on first frame 2021-03-17 00:24:57 +11:00
Glenn Maynard
18854dcf14 GIF: Handle GIF transparency in the decoder.
Remove the special case for disposal_method == 1 and handle GIF
transparency by telling the decoder the transparent index.
2021-03-16 23:17:28 +11:00
Glenn Maynard
a4a314f765 GIF: Support transparency in the native decoder.
Allow the transparency index to be passed to the native decoder.  If not
-1, pixels with this index will be left at their previous value.

This only adds the decoder support and isn't active yet.
2021-03-16 23:17:12 +11:00
Andrew Murray
d7cbc9a27e Corrected grammar 2021-03-16 22:19:48 +11:00
Andrew Murray
36a4b055bb Updated comments 2021-03-15 12:50:30 +11:00
Andrew Murray
68719fe6ea
Merge branch 'master' into exif 2021-03-15 12:41:45 +11:00
Andrew Murray
c52b45df62 Removed automatic retrieval of GPS IFD 2021-03-15 12:33:06 +11:00
Hugo van Kemenade
1c086c65d4
Merge pull request #5321 from radarhere/tiff_icc_profile
Save ICC profile from TIFF encoderinfo
2021-03-14 10:42:51 +02:00
Hugo van Kemenade
4c297ec312
Merge pull request #5268 from radarhere/rgb
Moved RGB fix inside ImageQt class
2021-03-14 10:26:08 +02:00
Andrew Murray
2f84f633e3 Create disposal image at the destination size, instead of cropping 2021-03-14 13:40:55 +11:00
Andrew Murray
16dbffc3a8 _crop already makes a copy of the image 2021-03-14 13:31:16 +11:00
Andrew Murray
188d4f6b6a Only import numpy when necessary 2021-03-12 12:03:48 +11:00
Andrew Murray
f91f93e246
Merge pull request #5305 from lukegb/bug/format-strings
Fix -Wformat error in TiffDecode
2021-03-11 22:34:17 +11:00
Andrew Murray
68b655f3f0
Updated format specifiers 2021-03-10 20:43:16 +11:00
Andrew Murray
f42d6cf1ac Save ICC profile from TIFF encoderinfo 2021-03-10 20:16:49 +11:00
Andrew Murray
e54880c652 Moved RGB fix inside ImageQt class 2021-03-10 13:17:19 +11:00
Hugo van Kemenade
3225e39e9a
Merge branch 'master' into alpha_composite 2021-03-08 14:16:46 +02:00
Hugo van Kemenade
d9e4424a7f
Merge pull request #5260 from radarhere/imageqt_exclusive_fp
Ensure file is closed if it is opened by ImageQt.ImageQt
2021-03-08 14:13:48 +02:00
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
e437a8f981 Do not edit text of mode strings 2021-03-07 13:14:07 +11:00
Andrew Murray
8206f14419 Simplified code 2021-03-06 21:44:31 +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
Piolie
b6f6fba8cf Rewrite _ignore_comment as one-liner 2021-01-31 01:40:43 -03:00
Piolie
b43654d159 Change variable name in _read_magic() 2021-01-31 01:40:43 -03:00
Piolie
39288f0fb0 Create maxval variable 2021-01-31 01:40:32 -03:00
Piolie
50522d932e Change max token size to 10
- ...so as not to reject "2,147,483,647" (2 ** 31 - 1);
- reword exception message.
2021-01-31 01:35:25 -03: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
Piolie
73fed77c0c Suppress exception context 2021-01-06 14:46:30 -03:00
Piolie
5d0ad5e2e9 Revert exception types to ValueError 2021-01-06 01:21:01 -03:00
Piolie
4dbe244e42 Add token limit 2021-01-06 01:07:14 -03:00
Piolie
d2ad27d70a Correctly check magic number 2021-01-05 00:08:15 -03: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
Andrew Murray
2341c6b933
Merge branch 'master' into jp2-decode-subsample 2021-01-04 23:25:09 +11:00
Jan Solanti
b08c514ee7 BcnDecode: add comment about BC2&3 color blocks 2021-01-04 22:48:02 +11:00
Jan Solanti
097f7d0f56 Stop decoding BC1 punchthrough alpha in BC2&3 2021-01-04 22:47:18 +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
86ad435ee4
Merge branch 'master' into master 2020-12-30 13:05:35 +11:00
Andrew Murray
0ff800a525
Updated docstring
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-12-30 12:49:22 +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
Piolie
6b81e34d67 Improve handling of PPM headers 2020-12-21 22:39:27 -03: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
d7245eae23
Capitalisation
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-11-01 14:07:31 +11:00
Andrew Murray
63e8420ef6
Removed docstring sentence
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-11-01 14:05:52 +11:00
Andrew Murray
b214c2d73e
Changed wording 2020-11-01 14:02:15 +11:00
Andrew Murray
732bf12fd6
Merge branch 'master' into 3.10 2020-10-31 15:16:46 +11:00
nulano
4f4c3b34f8 jpeg2000: add subsampling decoder support 2020-10-20 07:16:24 +01:00
gofr
4dc195333e fixup! De-zigzag JPEG's DQT when loading; deprecate convert_dict_qtables 2020-10-17 20:45:54 +02:00
gofr
9980981c2e De-zigzag JPEG's DQT when loading; deprecate convert_dict_qtables
Re-order the JPEG quantization tables to normal order when
loading. This wastes a few CPU cycles if you don't need them.
But it has the advantage of hiding the zigzag order JPEG
implementation detail of these tables completely from Pillow
users.

This difference has led to cases where:
* arrays in zigzag order were taken from a dict and passed
  directly as a qtables parameter, causing them to be "zigzagged"
  again by libjpeg.
* dicts with lists in normal order being passed to
  JpegImagePlugin.convert_dict_qtables, causing them to be
  unnecessarily "de-zigzagged".
2020-10-17 20:20:59 +02: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
Hugo van Kemenade
c1a9f889f3
Merge pull request #4964 from nulano/pypy 2020-10-12 17:59:55 +03:00
nulano
90e8255ba4 Merge remote-tracking branch 'upstream/master' into anchor-part3
# Conflicts:
#	Tests/test_imagefontctl.py
2020-10-12 15:50:45 +01:00
Hugo van Kemenade
309cb9e5c4
Merge pull request #4927 from radarhere/tuple 2020-10-12 14:40:22 +03:00
Hugo van Kemenade
43c3f4de80
Merge pull request #4955 from nulano/ft-color3 2020-10-12 13:52:01 +03:00
Andrew Murray
518b783c64 Removed OSError in favour of DecompressionBombError 2020-10-12 19:32:48 +11:00
nulano
40c9a5a2a0 compatibility for LCMS<2.7, vix LCMS version string 2020-10-12 02:58:24 +01:00
nulano
c06bb8044d remove PyPy3-7.1.x compatibility code 2020-10-12 02:08:50 +01:00
nulano
39ae5d62f0 compatibility code for ancient FreeType 2020-10-12 01:45:52 +01:00
nulano
067a254366
Apply suggestions from code review
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-10-11 21:55:32 +02:00
Hugo van Kemenade
15c339470d
Merge pull request #4523 from xtsm/ellipse
Implemented another ellipse drawing algorithm
2020-10-11 18:04:34 +03:00
gofr
b212a1eb8f Keep baseline compatibility when specifying quality
16-bit quantization tables can appear at quality values below
about 25. These may cause compatibility problems. Maintain
baseline compatibility and avoid confusing users with warning
messages.
2020-10-10 16:23:58 +02:00
gofr
0a235314b8 Remove outdated comment about 8-bit DQT support 2020-10-10 15:26:44 +02:00
gofr
6db0843af4 Add support for 16-bit precision JPEG quantization values
Don't force JPEG quantization to be baseline-compatible

Quantization values will not be limited to values 1..255 and may
be 16 bits if needed. This may cause compatibility issues.
2020-10-10 14:35:09 +02:00
nulano
9b5931f212
typo
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-10-09 16:43:10 +02:00
nulano
c80f123923 document ImageDraw.textlength and ImageDraw.textbbox 2020-10-09 01:43:23 +01:00
nulano
1551e120ae add textlength and textbbox to ImageDraw 2020-10-09 01:02:51 +01:00
nulano
395aa946a9 add getbbox and getlength, with tests
Squashed commits:

[ec9ec31b] add tests for invalid anchor
(cherry picked from commit 9e50a6a47f79876ee56942152047f03fff03c49b)

[386a9170] fix lint and docs
(cherry picked from commit 2d0d5282fcfc3ee332a41e60b865ee766445cc3d)

[29f5d4c9] restore and document previous getsize behaviour
see discussion in issue 4789
(cherry picked from commit 9fbc94571ce0ed42fdd11e99f343a1613c9dc6d3)

[0ffd51a0] add getbbox and getlength, with tests
(cherry picked from commit c5f63737476a998c81e589e5819d21ca69bb7b46)
2020-10-09 00:56:58 +01:00
Andrew Murray
ddbd529573 Corrected comment 2020-10-09 01:16:23 +11:00
Andrew Murray
88f9ef2f6b Removed unused function 2020-10-09 01:16:23 +11:00
nulano
568a1260fc fix color on big-endian 2020-10-07 13:03:05 +01:00
nulano
bf529303de use FT_Bitmap_Convert instead of reimplementing the wheel 2020-10-07 05:29:18 +01:00
nulano
9151da162c add support for CBDT and embedded bitmaps in truetype fonts 2020-10-07 05:29:17 +01:00
nulano
82a28d12e2 add support for fonts with COLR data 2020-10-07 05:29:10 +01:00
Hugo van Kemenade
c841501c34
Merge pull request #4752 from radarhere/warnings
Fixed comparison warnings
2020-10-05 23:49:54 +03:00
Hugo van Kemenade
a7f384a813
Merge pull request #4292 from radarhere/private_png_chunks
Added reading and writing of private PNG chunks
2020-10-05 23:49:09 +03:00
Hugo van Kemenade
b29cab08d3
Merge pull request #4930 from nulano/anchor-part2 2020-10-05 20:19:33 +03:00
Andrew Murray
7a1f0f6a8f Fixed bug in Exif __delitem__ 2020-10-05 09:45:05 +11:00
nulano
3273a1af4c fix tk on latest msys2-mingw64 2020-10-04 22:55:53 +01:00
Andrew Murray
ac1e86b9d4 Prefix header include 2020-09-29 19:54:57 +10:00
nulano
a9b8dcba7d write anchor docs
(cherry picked from commit dcaee36941e6cb5e6f93186b6f819fb74887e0d3)
2020-09-22 14:58:17 +02:00
Andrew Murray
7e4db0a80e Prefix other header includes 2020-09-22 13:33:05 +10:00
Andrew Murray
e01081bf8b
Improved error message
Co-authored-by: nulano <nulano@nulano.eu>
2020-09-22 08:36:29 +10:00
Andrew Murray
27c0747518 Allow tuples with one item to give single color value in getink 2020-09-20 14:23:05 +10:00
nulano
e6d4c2ce8f implement text anchor for truetype fonts
(cherry picked from commit bac9025918ccf944bac77addc130f33cf9d74701)
2020-09-19 15:17:45 +02:00
Hugo van Kemenade
93d011efb5
Merge pull request #4910 from nulano/anchor-part1 2020-09-19 13:41:15 +03:00
Axel Huebl
f79379ed7c Imaging.h: confusion with system
The file `libImaging/Imaging.h` gets installed flat on
Ubuntus into the public Python includes.

When building a newer version of Pillow from source and
hinting the Python includes "too early" in includes, e.g.
in package managers, this can confuse the two files and
pick up the external file over the internal one. With
different versions, this mismatch can lead to build errors,
e.g. undefined macros.

The most robust way to avoid this is to pre-fix the internal
include accordingly, so that the relative path to the including
file has to match as well.
2020-09-17 18:06:45 +10:00
Andrew Murray
c196af6ddb Fixed loading profile with non-ASCII path on Windows 2020-09-13 13:53:58 +10:00
Andrew Murray
2e029d9a79
Merge pull request #4840 from essarrjay/patch-1
Image.thumbnail docstring: added missing filters
2020-09-12 11:03:56 +10:00
Stanislau T
17d83d6a7c
Fix comment grammar
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-09-11 19:51:57 +03:00
nulano
a501ba9308 update link in comment 2020-09-11 01:14:00 +02:00
Hugo van Kemenade
68da661db9 Small optimisation: move distance==0 comparison to outer loop, to check once per call instead of once per pixel 2020-09-09 10:08:46 +03:00
nulano
ee1cc6ad7c remove use of FT_Set_Transform 2020-09-09 02:14:49 +02:00
nulano
5d541e3d9e simplify code, organize variable declarations, add comments 2020-09-09 02:14:46 +02:00
nulano
54e067779b fix and add tests
(cherry picked from commit 0b711f10d0490863976699c051f2027b6799d501) (+1 squashed commits)

Squashed commits:

[9d4e6c17] fix tests
2020-09-09 02:12:21 +02:00
Andrew Murray
c83ffc6aea Fixed effect_spread bug for zero distance 2020-09-08 18:51:58 +10:00
Andrew Murray
fac2d2781e
Merge pull request #4837 from nulano/formats
Add formats parameter to open
2020-09-05 20:49:59 +10:00
Hugo van Kemenade
3dba4ee10a
Merge pull request #4846 from comhar/features/compute_polygon_coordinates 2020-09-04 23:28:43 +03:00
nulano
a340dc5fd3 Merge remote-tracking branch 'upstream/master' into formats 2020-09-04 21:07:34 +02:00
Hugo van Kemenade
63d8a600cb
Merge pull request #4890 from nulano/mingw-setup 2020-09-03 21:11:39 +03:00
Hugo van Kemenade
799fa9764f
Merge pull request #4882 from nulano/putpixel 2020-09-03 19:22:30 +03:00
Hugo van Kemenade
128261fdbb
Merge branch 'master' into bytes-warning 2020-09-03 18:31:03 +03:00