Commit Graph

6914 Commits

Author SHA1 Message Date
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 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 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 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
Kleis Auke Wolthuizen 3460814b98 Add test case for undefined shift in rad2vips 2020-07-19 13:48:21 +02:00
John Cupitt 72ca38cab0 only rebuild heif exif if we have to
and fix write of XMP write in heic
2020-07-19 02:06:36 +01:00
John Cupitt fcaba0e6ba add @profile to webpsave
small tiffsave fixes too
2020-07-18 14:49:37 +01:00
John Cupitt a69c998ff0 avoid exif rebuild when stripping jpg
don't rebuild the exif data block if we don't need it

see https://github.com/libvips/libvips/issues/394
2020-07-18 14:07:21 +01:00
John Cupitt 63a549a3b2 Ugly hack to hide the GPSVersionID bug
see https://github.com/libvips/libvips/issues/394
2020-07-18 11:59:42 +01:00
John Cupitt 43385c928d fix crash with some openslide images
some openslide images seem to have null properties

see https://github.com/libvips/libvips/issues/1723
2020-07-17 10:50:09 +01:00
John Cupitt 0a4d4daf5e Merge branch 'master' of github.com:libvips/libvips 2020-07-15 12:22:37 +01:00
John Cupitt 6e9d6cc80a
Merge pull request #1718 from Zeranoe/patch-1
Update link for vips-gmic
2020-07-15 12:10:50 +01:00
John Cupitt 36ac84ee6f fix spngload default ppm 2020-07-15 10:56:34 +01:00
Zeranoe 2d7fe6211f
Update link for vips-gmic
vips-gmic doesn't appear to be a libvips repo anymore.
2020-07-15 03:30:58 -04:00
John Cupitt 83a7970a7d
Merge pull request #1716 from kleisauke/ubuntu-18.04-travis
Travis improvements
2020-07-14 19:06:03 +01:00
Kleis Auke Wolthuizen 102b3730e8 Remove stages from Travis
Ensures that the "fast_finish" option is honored and that
"Allowed failures" is still listed as a separate block.
2020-07-14 19:37:39 +02:00