Commit Graph

6776 Commits

Author SHA1 Message Date
John Cupitt 2c4c4132e8 Merge branch '8.10' 2020-08-28 17:47:40 +01:00
John Cupitt 99423649b9 start sinkscreen thread on first use
we were starting the sinkscreen background thread during vips_init() --
instead, start it on first use

see https://github.com/libvips/libvips/issues/1792
2020-08-28 17:46:23 +01:00
John Cupitt d5aaf3d056
Merge pull request #1795 from kleisauke/sinkscreen-mem-leak
Fix a small memory leak in sinkscreen
2020-08-28 16:56:09 +01:00
Kleis Auke Wolthuizen 9f5304632f Fix a small memory leak in sinkscreen 2020-08-27 18:11:03 +02:00
John Cupitt caa1cb9d9b improve docs for arrayjoin
see https://github.com/libvips/pyvips/issues/202
2020-08-24 17:42:33 +01:00
John Cupitt b07cfa858a note svg fix 2020-08-21 11:39:33 +01:00
Lovell Fuller 69ee8a32b6 Ensure SVG loader skips input with chars outside x09-x7F range
Add test with example valid WebP image that happens to contain
the string '<svg' within its compressed image data.
2020-08-21 11:38:40 +01:00
John Cupitt 7a8e891632
Merge pull request #1787 from lovell/svg-loader-skip-control-chars
Ensure SVG loader skips input with chars outside x09-x7F range
2020-08-21 11:37:10 +01:00
Lovell Fuller 489324f392 Ensure SVG loader skips input with chars outside x09-x7F range
Add test with example valid WebP image that happens to contain
the string '<svg' within its compressed image data.
2020-08-21 10:17:08 +01:00
John Cupitt f8faa5f7f7 Merge branch '8.10' 2020-08-19 11:12:18 +01:00
John Cupitt 270933c281 convert no-profile CMYK to RGB on save
Use the fallback cmyk profile to convert to RGB on save if the image has
no embedded profile.

Thanks augustocdias.

See https://github.com/libvips/libvips/issues/1767
2020-08-19 11:09:38 +01:00
John Cupitt 182e88957e prevent 0-length buffers reaching imagemagick
im6 seems to have added an assert for this

see https://github.com/libvips/libvips/pull/1785
2020-08-17 14:18:59 +01:00
Lovell Fuller b73bc3a855 Ensure magick buffer+file checks use consistent min length guard
Prevents a zero-length buffer from crashing GetImageMagick

It looks like the fix for magick7 in #1642 is also now required
for magick6 as the assertion appears to have been backported.
2020-08-17 14:17:55 +01:00
John Cupitt 98fdc17d2d
Merge pull request #1785 from lovell/magick-is-a-buffer-min-len
Ensure magick buffer+file checks use consistent min length guard
2020-08-17 12:51:37 +01:00
Lovell Fuller f844dbb623 Ensure magick buffer+file checks use consistent min length guard
Prevents a zero-length buffer from crashing GetImageMagick

It looks like the fix for magick7 in #1642 is also now required
for magick6 as the assertion appears to have been backported.
2020-08-17 12:29:19 +01:00
John Cupitt cdcf63f8e5 fix regression in thumbnail of pyr tiff
The new subifd pyramid thumbnail code broke the old page-based pyramid
detector.

Thanks tand826

See https://github.com/libvips/libvips/issues/1784
2020-08-17 10:10:23 +01:00
John Cupitt e4f1210d20 update wrapper script
fixes "make check".
2020-08-14 14:02:55 +01:00
John Cupitt 633abe7be8 add missing funcs to public C API
The C API was missing vips_jpegload_source and vips_svgload_source.
Thanks to augustocdias.

See https://github.com/libvips/libvips/issues/1780
2020-08-14 13:36:12 +01:00
John Cupitt b981911f67 remove redefinition of typedefs
We had this in a couple of places:

	typedef struct _A A;
	typedef struct _A A;

Some old gccs (eg. centos6) throw errors for this.

See https://github.com/libvips/libvips/issues/1774
2020-08-13 12:51:56 +01:00
John Cupitt fdded88cf7 start 8.10.1
following the doc generation fix
2020-08-09 14:39:37 +01:00
John Cupitt 603036a315 docs fix
pandoc changed the name of their top-level section node
2020-08-09 14:21:26 +01:00
John Cupitt b40baec28b fix write ICC profile to webp
ooops, a typo broke ICC profile write to webp 18 days ago

thanks augustocdias

see https://github.com/libvips/libvips/issues/1767
2020-08-05 15:29:54 +01:00
John Cupitt 420daf892b fix typo
see https://github.com/libvips/pyvips/issues/198#issuecomment-668789846

thanks Tremeschin
2020-08-05 15:15:33 +01:00
John Cupitt 7a2b2f89a1
Merge pull request #1756 from libvips/heif-workaround
try to work around some broken heic images
2020-08-01 12:54:57 +01:00
John Cupitt 1099bd068c revise heic thumbnail workaround 2020-08-01 11:49:01 +01:00
John Cupitt 80abdce923 try to work around some broken heic images
see https://github.com/libvips/libvips/issues/1574
2020-07-31 17:41:23 +01:00
John Cupitt 95a221dd6e better dbg msg in spngload 2020-07-31 17:37:12 +01:00
John Cupitt ba45c87b50 detect RLE overflow in radiance
old-style radiance RLE could overflow harmlessly

see https://oss-fuzz.com/testcase-detail/4918518961930240
2020-07-28 14:03:58 +01:00
John Cupitt 58b6d73a70 deprecate vips_popen()
it didn't work well on win, and we no longer use it anyway
2020-07-27 15:21:59 +01:00
John Cupitt cb1634dd31 block fuzz data over 100kb
Many codecs can take a huge amount of time attempting to read large
random objects. jpeg_read_header(), for example, can take ~10s on a 1mb
of random data.

Ignore fuzz objects over 100kb.

See https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=24383
2020-07-25 14:46:44 +01:00
John Cupitt 213533e03c better webp load sanity checking
see d93d9bb43b (r40846309)
2020-07-23 15:46:53 +01:00
John Cupitt 9a88b25aaa Merge branch 'master' of github.com:libvips/libvips 2020-07-23 15:42:04 +01:00
John Cupitt 17cddc196b improve pngload error messages too
see https://github.com/libvips/libvips/issues/1578
2020-07-23 15:41:20 +01:00
John Cupitt 70c0b36d4f better pngsave error message
add a target name to png's "unable to write to target" message

see https://github.com/libvips/libvips/issues/1578
2020-07-23 15:26:11 +01:00
John Cupitt 7c413f8872
Merge pull request #1727 from kleisauke/oss-fuzz-24230
Fix undefined-shift in scanline_read_old
2020-07-21 18:05:32 +01:00
John Cupitt d203a3fb89 small comment improvements 2020-07-21 18:03:45 +01:00
John Cupitt c4d093b01f
Merge pull request #1735 from lovell/perf-scrgb-to-rgb
Performance: improve scRGB to sRGB conversion by ~8%
2020-07-21 17:58:12 +01:00
John Cupitt a6557eb94f
Merge pull request #1733 from lovell/perf-xyz2lab-clip
Performance: safely improve XYZ to LAB conversion by ~12%
2020-07-21 15:16:11 +01:00
Lovell Fuller e508ea6511 Performance: improve scRGB to sRGB conversion by ~8%
- Remove unnecessary isinf checks as values are clipped
- Remove any ignored out-of-gamut tracking
2020-07-21 14:36:57 +01:00
Lovell Fuller 3659655750 Performance: improve XYZ to LAB conversion by ~15%
- VIPS_CLIP is faster than fmin/fmax based library calls
- Cast to int to ensure the cubed root LUT is not referenced by NaN
2020-07-21 14:21:27 +01:00
John Cupitt b845d4a20d
Merge pull request #1732 from libvips/revert-1729-perf-lab-clip
Revert "Performance: improve XYZ to LAB conversion by ~15%"
2020-07-21 11:01:44 +01:00
John Cupitt e82b1689c7
Revert "Performance: improve XYZ to LAB conversion by ~15%" 2020-07-21 11:00:35 +01:00
John Cupitt 54791b221c Merge branch 'master' of github.com:libvips/libvips 2020-07-20 15:01:19 +01:00
John Cupitt d93d9bb43b fix large animated web support
we were not checking image bounds correctly for very large animated webp
images

thanks pomirleanu

see https://github.com/libvips/libvips/issues/1730
2020-07-20 14:59:36 +01:00
John Cupitt ef6ad7f4bb
Merge pull request #1729 from lovell/perf-lab-clip
Performance: improve XYZ to LAB conversion by ~15%
2020-07-20 13:36:03 +01:00
John Cupitt cba371a9ba add a note about atan2() use in complex.c
see https://github.com/libvips/libvips/pull/1728
2020-07-20 13:34:41 +01:00
John Cupitt 8eefe9f4fb
Merge pull request #1728 from lovell/lch-prefer-atan-over-atan2
Performance: improve LAB to LCH conversion by ~30%
2020-07-20 13:31:07 +01:00
Lovell Fuller 4aaa39502b Improve performance of conversion to LAB by ~15% 2020-07-19 21:20:21 +01:00
Kleis Auke Wolthuizen aac1748615 Explicitly cast to unsigned int before left-shifting
To avoid potential signed integer overflow (undefined behavior), as
implicit integer promotion means the operand becomes a (signed) int.
2020-07-19 19:14:48 +02:00
Lovell Fuller a7357c5757 Perf: improve conversion to LCH by ~30%, avoid costly atan2 2020-07-19 15:29:03 +01:00