John Cupitt
a6fbf1af36
Merge pull request #1264 from omira-sch/add-oss-fuzz
...
improve fuzz targets and oss-fuzz integration
2019-07-21 17:48:58 +01:00
John Cupitt
4f2f4b4577
add gif, heif, rad, webp early close
2019-07-21 12:29:25 +01:00
John Cupitt
2c654060f9
experiment with a different early-close strategy
...
We close loaders early in order to save file handles, and on Windows to
make sure that files can be deleted as soon as possible.
Currently loaders do this by watching the Y coordinate of requests and
freeing the fd when the final line of the file is fetched. This is messy
and does not always work, since there are cases when the final line is
not fetched.
Instead, this patch gets loaders to listen for "minimise" on their
output and close on that. This signal is emitted on all upstream images
whenever a threadpool finishes a scan of an image and is usually used to
trim caches after computation.
See https://github.com/libvips/libvips/issues/1370
2019-07-20 16:31:30 +01:00
John Cupitt
67ad303d43
add VIPS_PROFILE env var to enable profiling
2019-07-19 16:04:07 +01:00
John Cupitt
64a6a27326
Merge branch '8.8'
2019-07-19 11:59:38 +01:00
John Cupitt
8cf6a9f9ca
don't attempt to save large XMP to JPG
...
jpeg_write_marker() with some libjpeg versions will throw a fatal
error with large chunks.
To write >64kb XMP it you need to parse the whole XMP object,
pull out the most important fields, code just them into the main
XMP block, then write any remaining XMP objects into a set of
extended XMP markers.
http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/xmp/pdfs/XMPSpecificationPart3.pdf
Instead, just warn and skip large XMP blocks.
see https://github.com/libvips/libvips/issues/1372
2019-07-19 11:37:36 +01:00
John Cupitt
9063b8608e
revise README
2019-07-18 08:43:41 +01:00
John Cupitt
db5671ecbb
Merge pull request #1366 from kleisauke/vector-array-int
...
Support std::vector within the image_get/set_array_int functions
2019-07-16 09:49:24 +01:00
Oscar Mira
4b1c49eb95
suppress memory leak warnings for python tests
...
Now that travis does not fail, the allow_failure flag for the
clang-compiler job can be removed.
2019-07-16 01:19:37 +02:00
Oscar Mira
50ce012520
vips_guess_prefix memory leak was fixed in 8.8
2019-07-16 01:19:37 +02:00
Kleis Auke Wolthuizen
42bb8f51b9
Support std::vector within the image_get/set_array_int functions
2019-07-15 15:29:19 +02:00
Oscar Mira
1dd0f4f6a7
add travis build with clang and address-sanitizer
...
Create a new build job to run fuzz regression testing in travis. Also include a
suppression file to ignore known memory leaks.
2019-07-15 14:02:27 +02:00
Oscar Mira
f2745e19c9
add check script for regression testing
...
Run the fuzz targets over the seed corpus with the standalone driver as part of
the test suite.
2019-07-15 14:02:27 +02:00
Oscar Mira
f3cdf25923
disable PNG CRC checks in fuzzing mode
2019-07-15 14:02:27 +02:00
Oscar Mira
3ea72c286e
improve fuzz targets and oss-fuzz integration
...
It replaces current fuzz setup with 5 new fuzzers integrating them with
top-level Makefile. It now supports multiple fuzzing engines and Google's
oss-fuzz. By default, the fuzzers are linked against an standalone runner to
easily reproduce bugs.
2019-07-15 14:02:27 +02:00
John Cupitt
2da56b918d
note about libtiff error handlers
2019-07-13 14:28:50 +01:00
John Cupitt
044f8b74f6
Merge branch 'master' into add-tiff-webp-zstd
2019-07-11 13:50:47 +01:00
John Cupitt
c3e7504835
Merge branch '8.8'
2019-07-10 17:44:39 +01:00
John Cupitt
7f47acab56
tiny improvement
2019-07-10 17:43:17 +01:00
John Cupitt
5e2d66d14b
better early shutdown behaviour in shrinkv
...
read the tail of the input to force early shutdown in seq readers
does reducev need something similar?
see https://github.com/kleisauke/net-vips/issues/12
2019-07-09 16:58:30 +01:00
Tomáš Szabo
ab7ef2c2bc
fix: make gif-loop consistent between GIF and WEBP
2019-07-08 14:28:48 +02:00
John Cupitt
52ee3b083f
add webp and zstd support to tiffsave
...
needs some tests still
2019-07-08 10:39:44 +01:00
John Cupitt
063234fde1
set webp loop even if we strip
...
Make sure that webp loop_count is set, even if strip is enabled.
See https://github.com/libvips/libvips/issues/1339
2019-07-08 08:48:06 +01:00
John Cupitt
bf9a2adf58
Merge branch '8.8'
2019-07-07 19:47:25 +01:00
John Cupitt
bad58598f6
fix "how it works" in docs
...
I tried loads of ways to fix the rendering of this page, but swapping
the sections headings is the only one that works :(
2019-07-07 17:18:48 +01:00
John Cupitt
37ef7ad231
tiny doc errors
2019-07-07 15:14:16 +01:00
John Cupitt
c7f98ad0a5
Merge branch '8.8'
2019-07-07 13:12:51 +01:00
John Cupitt
e4cff876a8
fix make dist
...
we'd renamed a file
2019-07-07 11:20:28 +01:00
John Cupitt
f45f0ecef4
limit resize if shrink would drop axis <1px
...
vips_resize() will break the aspect ratio and limit resize on an axis if
it would result in an image of less than 1px on that axis
see https://github.com/lovell/sharp/issues/1782#issuecomment-508921306
2019-07-07 10:19:33 +01:00
John Cupitt
9dc422cb21
relax testsuite for magicksave
...
it seems some magicks code gif-loop differently
2019-07-06 20:44:24 +01:00
John Cupitt
c8ca8f02ba
keep magicksave delay array alive for longer
...
fixes a segv in magicksave_buffer ... we could try to use delay after im
had been unreffed in some circumstances
2019-07-06 17:45:41 +01:00
John Cupitt
3871369d3e
Merge branch 'master' into deftomat-master
2019-07-06 14:50:40 +01:00
John Cupitt
e7b6709f99
use a single loop to get frame and alpha metadata
...
we had two before, plus use the do/while form recommended for libwebp
frame iteration
2019-07-06 14:46:29 +01:00
John Cupitt
515bf68f46
reformatting for vips2webp
...
- move a couple of small functions inline for simplicity
- mark "gif-delay" as deprecated
- minor reformatting
2019-07-06 13:37:33 +01:00
John Cupitt
777c360774
safer gifload delay array init
...
- remove assumptions about n_pages
- minor reformatting
2019-07-06 11:34:20 +01:00
John Cupitt
00676a2166
Merge branch 'master' of git://github.com/deftomat/libvips into deftomat-master
2019-07-06 11:01:02 +01:00
Tomáš Szabo
1b54684650
Add set and get for an array of ints
2019-07-05 17:29:11 +02:00
Tomáš Szabo
bd9c97feed
Changes based on review
2019-07-05 17:23:29 +02:00
John Cupitt
fd9dfc4426
Merge pull request #1361 from pszemus/master
...
[webp] Use well documented use_sharp_yuv option instead of preprocessing
2019-07-05 13:27:42 +01:00
Przemysław Sobala
1c30a8567c
[webp] Use well documented use_sharp_yuv option instead of preprocessing
2019-07-05 13:14:32 +02:00
John Cupitt
80f247cfb2
Merge branch '8.8'
2019-07-03 15:33:43 +01:00
John Cupitt
8cb2b613b7
note new heifsave param in changelog
...
plus tiny reformatting
2019-07-03 15:04:58 +01:00
John Cupitt
4a2c80043d
Merge pull request #1360 from lovell/heifsave-expose-compression
...
heifsave: expose compression option
2019-07-03 13:34:08 +01:00
Lovell Fuller
42f9f78c86
heifsave: expose compression option
...
improve error messaging, add further suffixes
2019-07-03 13:07:58 +01:00
John Cupitt
26100041e7
fewer warnings on tiffload
...
We were setting TIFFTAG_JPEGCOLORMODE == JPEGCOLORMODE_RGB for *all*
images, but libtiff warns if you use it on an image which is not
jpg-compressed.
Only set it for jpg-compressed images.
See https://github.com/libvips/libvips/issues/1329
2019-07-02 12:23:53 +01:00
John Cupitt
e596fe5cd3
Merge branch 'master' into add-unlimited-to-svgload
2019-07-01 12:04:54 +01:00
Tomáš Szabo
091bb853dd
Merge remote-tracking branch 'upstream/master'
2019-06-30 18:03:45 +02:00
John Cupitt
25af46a189
add rgba -> rgb stage for webp output
2019-06-30 16:53:11 +01:00
Tomáš Szabo
166aae1440
sync fork
2019-06-30 17:10:56 +02:00
John Cupitt
aac01126af
magicksave supports strip option
2019-06-29 20:23:46 +01:00