Commit Graph

7060 Commits

Author SHA1 Message Date
John Cupitt
076e7e3a92 Merge branch '8.10' 2020-11-03 11:52:05 +00:00
John Cupitt
91d9610a55 fix out of bounds read in tiffload
libtiff can change the value of some fields while scanning a corrupt
TIFF file and this could trigger an out of bounds read.

This patch makes tiffload more cautious about rescanning a TIFF
directory before reading out header fields.
2020-11-03 11:48:21 +00:00
Kleis Auke Wolthuizen
4533375f63 Fix centre convention 2020-11-02 13:51:27 +01:00
Kleis Auke Wolthuizen
fdc140e8e9 Round sum values to the nearest integer in *_notab 2020-11-02 13:51:27 +01:00
Kleis Auke Wolthuizen
49d8051e22 Revert "Remove round-to-nearest behaviour"
This reverts commit ac30bad6
2020-11-02 13:51:27 +01:00
John Cupitt
c13d651f1c Merge branch 'master' of github.com:libvips/libvips 2020-10-28 10:26:55 +00:00
John Cupitt
c99dc0fe03 add mssing g_option_context_free() to vipsedit
We were not freeing the argument parse context in vipsedit.c.

Thanks zodf0055980

see https://github.com/libvips/libvips/issues/1868
2020-10-28 10:24:53 +00:00
John Cupitt
4799df9efb fix two small bugs in test_connections.c
We were passing NULL rather than argv0 to VIPS_INIT(), and we were not
freeing the loaded file.

thanks zodf0055980

see https://github.com/libvips/libvips/issues/1867
2020-10-27 15:11:29 +00:00
John Cupitt
b42a542858 only remove main image (ifd0) orientation tag
we were stripping all orientation tags on autorot

see https://github.com/libvips/libvips/issues/1865
2020-10-24 12:42:50 +01:00
John Cupitt
c07cadd915 Merge branch '8.10' 2020-10-20 08:56:49 +01:00
John Cupitt
ae82bcc3e8 fix out of bounds exif read in heifload
We were subtracting 4 from the length of the exif data block without
checking that there were 4 or more bytes there.
2020-10-20 08:54:54 +01:00
John Cupitt
774b7fcf6f Merge branch '8.10' 2020-10-19 14:41:51 +01:00
John Cupitt
0131d4d3eb fix vips7 webp load
webp load using the vips7 interface was crashing, thanks barryspearce

see https://github.com/libvips/libvips/issues/1860
2020-10-19 14:34:02 +01:00
John Cupitt
b3481f5baa Merge branch '8.10' 2020-10-18 22:37:57 +01:00
John Cupitt
b1e636346a relax is_a heic test rules
32 was a little too small, see https://github.com/libvips/libvips/issues/1861
2020-10-18 22:36:15 +01:00
John Cupitt
a1ae0d1d68 revise BGRA->RGBA 2020-10-17 13:42:57 +01:00
John Cupitt
93f67a2bdf improve BGRA -> RGBA conversion 2020-10-16 18:53:45 +01:00
John Cupitt
50288c5f18 add pdfium load from source 2020-10-16 16:57:13 +01:00
John Cupitt
1590d418b9 fix pdfium mutex init
We need to make the mutex in _class_init, not _build, since we can lock
even if _build is not called.
2020-10-16 15:38:36 +01:00
John Cupitt
47b04c9da6 get pdium load working again
It had bitrotted a bit. Thanks @Projkt-James.

See https://github.com/libvips/libvips/issues/1400
2020-10-16 15:13:25 +01:00
John Cupitt
d1f84b0985 better GraphicsMagick image write
We were not setting matte or depth correctly, thanks bfriesen.
2020-10-16 00:05:17 +01:00
John Cupitt
5556f1ec65 move the pdfium lock init
move it inside the existing ONCE

see https://github.com/libvips/libvips/pull/1857
2020-10-13 15:00:13 +01:00
John Cupitt
62ad3c222e
Merge pull request #1857 from DarthSim/fix/separate-lock-for-pdfium
Separate lock for PDFium
2020-10-13 14:56:15 +01:00
DarthSim
6fd8f20844 Separate lock for PDFium 2020-10-13 17:25:49 +06:00
John Cupitt
888b5654a0 fix heifload with libheif 1.6
heif_avif wasn't added until libheif 1.7
2020-10-11 19:54:36 +01:00
John Cupitt
8d4852f217
Merge pull request #1852 from kleisauke/vips-argument-collect-set
Speed up VIPS_ARGUMENT_COLLECT_SET
2020-10-11 19:34:23 +01:00
Kleis Auke Wolthuizen
e0b3e53c0e Speed up VIPS_ARGUMENT_COLLECT_SET
By using G_VALUE_COLLECT_INIT, see:
https://bugzilla.gnome.org/show_bug.cgi?id=603590
2020-10-10 19:48:52 +02:00
John Cupitt
302f1f70d9
Merge pull request #1850 from lovell/heif-compression-metadata
heifload: expose heif-compression metadata
2020-10-10 06:07:02 +01:00
Lovell Fuller
1177bd1dae heifload: expose heif-compression metadata 2020-10-09 15:54:17 +01:00
John Cupitt
f1d2d4030e fix build with libheif save buit not load
We had some definitions inside the #ifdef HEIFLOAD.

Thanks estepnv

https://github.com/libvips/libvips/issues/1844
2020-10-09 14:02:53 +01:00
John Cupitt
29b6ba1294 Merge branch '8.10' 2020-10-07 15:27:27 +01:00
John Cupitt
678b6d5c95 fix a regression in the C path for dilate/erode
A ++ had been dropped in the recent refactoring. Credit to kleisauke.

See https://github.com/libvips/libvips/issues/1846
2020-10-07 15:23:40 +01:00
John Cupitt
9fbf49cf60 Merge branch '8.10' 2020-10-06 11:43:13 +01:00
John Cupitt
80b73af225 note new "speed" param in heifsave
To help support the rapid move to AVIF.

see https://github.com/libvips/libvips/pull/1819#issuecomment-704145244
2020-10-06 10:50:06 +01:00
Lovell Fuller
fc1e609f44 libheif: expose speed parameter (currently AV1 compression only)
Supports both aom and rav1e encoders by limiting to a 0-8 range.

(The rav1e encoder accepts speed values of 9 and 10 but these
use 64x64 blocks more suited to video than images.)
2020-10-06 10:48:54 +01:00
John Cupitt
f1c8959e66 add a test for vipsthumbnail of stdin/stdout 2020-10-04 16:14:13 +01:00
John Cupitt
74d399088a Merge branch '8.10' 2020-10-04 14:26:40 +01:00
John Cupitt
5b119e183f pdfload was missing a rewind on source 2020-10-04 14:26:13 +01:00
John Cupitt
edbe9bf8ef revise pipe sources (again)
Simplify and cleanup.
2020-10-04 14:05:53 +01:00
John Cupitt
727eb2ee39 Merge branch '8.10' 2020-10-03 18:29:23 +01:00
John Cupitt
0ee8b1e844 improve seek on pipes
There were a few issues in VipsSource around seeking on pipes. With this
patch, EOF detection is better, and pipe sources automatically turn into memory
sources when EOF is hit.

see https://github.com/libvips/libvips/issues/1829
2020-10-03 18:25:24 +01:00
John Cupitt
a1505c6f72 add stdin, stdout to vipsthumbnail
eg.

	vipsthumbnail stdin[page=2] -o .jpg[Q=90]

mirror of syntax in new_from_file etc.
2020-10-02 16:46:03 +01:00
John Cupitt
fbaa3c6dff update vipsthumbnail docs for --export-profile
and --input-profile
2020-10-02 11:42:04 +01:00
John Cupitt
f2956ac069 note improvements to iprofile
The docs had fallen behind a bit ... iprofile is no longer usually necessary.

see https://github.com/libvips/libvips/issues/1843
2020-10-02 11:20:35 +01:00
John Cupitt
c27c471e28 Merge branch '8.10' 2020-09-28 12:33:32 +01:00
John Cupitt
e3181e0579 get docs building with goi 1.66+
It builds now, but some doc sections are missing. Fix this properly in
8.11.

See https://github.com/libvips/libvips/issues/1836
2020-09-28 12:32:06 +01:00
John Cupitt
b3f77634df Merge branch '8.10' of github.com:libvips/libvips into 8.10 2020-09-27 10:03:29 +01:00
John Cupitt
b078c3c164 Merge branch '8.10' 2020-09-26 13:15:45 +01:00
John Cupitt
237604bb07 revise heifload EOF detection
VipsSource used a unix-style model where read() returns 0 to mean EOF.
libheif uses a model where a separate call to wait_for_file_size()
beforehand is used to check thaht the read will be OK, and then the
read() is expected to never fail.

We were trying to put EOF detection into libheif read(), but that's not
the right way to do it. Instead, test for EOF in wait_for_file_size().

see https://github.com/libvips/libvips/pull/1833
2020-09-26 13:00:52 +01:00
Lovell Fuller
7829518847 heifload: prevent reading beyond end of source buffer 2020-09-26 12:03:06 +01:00