Commit Graph

6115 Commits

Author SHA1 Message Date
John Cupitt efcd31b498 add something to test the new restart system
do multiple renders from one seq iage, check fds are opened and closed
as expected

see https://github.com/libvips/libvips/issues/1370
2019-10-06 07:25:09 +01:00
John Cupitt c1921b0ad1 add a test for file descriptors
verify new loader behaviour with minimise
2019-10-04 17:44:25 +01:00
John Cupitt c328b089b1 jpegload restart after minimise
after minimise, we need to reopen the underlying file

passes pytest but a proper test is still to come

https://github.com/libvips/libvips/issues/1370
2019-10-03 16:40:52 +01:00
John Cupitt 0830875917 add restart to heifload
heifload will restart read if necessary after minimise

see https://github.com/libvips/libvips/issues/1370
2019-10-03 13:16:37 +01:00
John Cupitt 1ef1b2d987 much faster handling of missing heif thumbnails
Fetching the thumbnail from a heif image without a thumbnail used to
reselect the image for each scanline, which was horribly slow.

Thanks Kleis!
2019-09-30 14:58:43 +01:00
John Cupitt a92f0ed504 smarter heif thumbnail selection in `thumbnail`
We were checking for thumbnail width and height > target width and
height, but of course we can have one of target width or height very
large if we are leaving that axis to float in size.

Instead, calculate a shrink from the heif thumbnail size and see if that is
>= 1.0, ie. we can generate output without upsizing.
2019-09-30 14:34:11 +01:00
John Cupitt 4f1e57c040 add restart after minimise support to gifload
see https://github.com/libvips/libvips/issues/1370#issuecomment-533169856
2019-09-26 18:07:18 +01:00
John Cupitt 5df173dd15
Merge pull request #1433 from lovell/silence-gcc-warnings
Silence a couple of GCC compiler warnings
2019-09-20 17:38:10 +01:00
Lovell Fuller 02c42fdeba Silence a couple of GCC compiler warnings 2019-09-20 17:08:25 +01:00
John Cupitt e16e4abeda make pdfload header a proper vfunc
_buffer was not inheriting it correctly
2019-09-19 18:09:19 +01:00
John Cupitt 0323b77666 pdfload reopens after minimise if necessary
We were using "minimise" to close pdf input early, but this will break
programs which make several output images from one sequential input
image. For example, loading all pages of a PDF as a toilet-roll image,
then saving pages as a set of PNGs.

This patch adds vfuncs for open and close, and makes _generate reopen
the input if necessary.

We will need similar patches for pdfiumload, gifload, gifnsload,
tiffload etc.

see https://github.com/libvips/libvips/issues/1370#issuecomment-533169856
2019-09-19 17:04:42 +01:00
John Cupitt 2472f52123 default to open issues rather than all issues 2019-09-19 06:05:42 +01:00
John Cupitt bebe923664 better fuzz badge 2019-09-19 05:55:34 +01:00
John Cupitt 06a13f59f2
Merge pull request #1431 from libvips/add-opencollective-link
Add link to opencollective
2019-09-18 15:30:51 +01:00
Lovell Fuller 3de1c3874a
Add link to opencollective
Links the libvips GitHub repo to https://opencollective.com/libvips
2019-09-18 15:02:55 +01:00
John Cupitt f01023e222 fix a compiler warning
gcc could warn (incorrectly) about used before set in text.c
2019-09-17 13:32:37 +01:00
John Cupitt 3b0d44be51 fix ref leak in thumbnail
we were accidentally reusing a t[] with RAD images
2019-09-14 00:22:36 +01:00
John Cupitt d8cb96581d Merge branch 'revise-svgload' 2019-09-12 13:11:17 +01:00
John Cupitt efdf33f3de add vips_error_buffer_copy()
Add vips_error_buffer_copy() to fix a race in error buffer fetch.

See https://github.com/libvips/libvips/issues/1423

Thanks @dineshkannaa
2019-09-12 09:49:49 +01:00
John Cupitt e505d56079 experiment with svgload as a sequential loader
see https://github.com/libvips/libvips/issues/1425
2019-09-11 16:58:20 +01:00
John Cupitt d290c971ab reorganise vipspng a little
so we only set max malloc in one place

see https://github.com/libvips/libvips/pull/1424
2019-09-11 14:56:32 +01:00
John Cupitt 64898330e4
Merge pull request #1424 from OrderMyGear/png-max-malloc-buffer
also set png max chunk malloc when reading buffer
2019-09-11 14:22:33 +01:00
John Cupitt 0b57e2cdc2 note mozjpeg settings in docs
see https://github.com/libvips/libvips/issues/1422
2019-09-11 09:29:43 +01:00
Matt Drollette e233698c2b also set png max chunk malloc when reading buffer 2019-09-10 12:31:11 -05:00
John Cupitt 7b2729adfa fix up nifti load/save
- use double for all floating point scalar metadata, like other loaders
- remove use of stray "n" property
2019-09-09 16:06:22 +01:00
John Cupitt 7987cf63c3 fix magick gif optimisation
defines were misspelt
2019-09-07 15:45:27 +01:00
John Cupitt dd9eba9e26 add @format and @interpretation to rawload 2019-09-05 16:25:55 +01:00
John Cupitt f09bd91f69 allow vips_init(NULL)
gave an assert error before
2019-09-05 14:28:19 +01:00
John Cupitt 1ee54bfa80 Merge branch '8.8' 2019-09-05 12:45:08 +01:00
John Cupitt f80c7a1810 add tests for xres/yres in tiffsave 2019-09-05 12:39:56 +01:00
John Cupitt 06fdc95038 xres/yres params in tiffsave were in cm
and should have been in pixels/mm

thanks f--f

see https://github.com/libvips/libvips/issues/1421
2019-09-04 17:02:24 +01:00
John Cupitt 2ab5aa7bf5 fix a used-before-set error in im_vips2dz
we were reading an uninited string in a vips7 compatibility wrapper, thanks
yifengchen-cc

see https://github.com/libvips/libvips/issues/1419
2019-09-03 13:17:18 +01:00
John Cupitt 8ddbfbaf0c fix RGBA heifsave
we need to set plane bits as well

see https://github.com/libvips/libvips/issues/1411
2019-09-01 20:55:25 +01:00
John Cupitt da8cee048f enable alpha in heifsave
Check for image alpha and enable it. There seem to be some
non-transparent tiles, curiously.

See https://github.com/libvips/libvips/issues/1411
2019-09-01 16:58:50 +01:00
John Cupitt 75b45cc2ef enable alpha handling in heic load
use RGBA decoding, when appropriate

see https://github.com/libvips/libvips/issues/1411
2019-09-01 16:37:43 +01:00
John Cupitt 0e63a410bb Merge branch 'master' of github.com:libvips/libvips 2019-09-01 13:13:46 +01:00
John Cupitt a1ed6c7f6c improve GIF edarly close again
We were trying to keep the FILE open for gifload between header and
load, but this meant some corrupt GIFs could keep the file open longer
than they should.

Instead, make close into a vfunc and always close between header and
load.

see https://github.com/libvips/libvips/issues/1370#issuecomment-526829415
2019-09-01 12:54:47 +01:00
John Cupitt 55d283d56e
Merge pull request #1418 from omira-sch/cleanup-corpus-dirs
remove stale corpus dirs
2019-09-01 11:16:14 +01:00
John Cupitt 4e2033053e
Merge pull request #1417 from bgilbert/cpp7
configure.ac: drop --enable-cpp7 and --enable-pyvips8 options
2019-09-01 11:14:15 +01:00
Oscar Mira 37eb4c73c8 remove stale corpus dirs
After #1398 these directories are not needed anymore.
2019-09-01 12:00:08 +02:00
Benjamin Gilbert 8733743642 configure.ac: drop --enable-pyvips8 option
It doesn't do anything either.
2019-09-01 02:26:34 -04:00
Benjamin Gilbert b3bbf47a46 configure.ac: drop --enable-cpp7 option
It's no longer connected to anything.
2019-08-31 14:29:09 -04:00
John Cupitt a3d2544934 sharpen restores colourspace 2019-08-31 12:30:06 +01:00
John Cupitt 4b5b982711 merge 8.8 2019-08-31 12:29:50 +01:00
John Cupitt 574be4380e revert sharpen restoring the input colourspace
icc_export can make _RGB images, so the input can be outside the set of
supported colourspace transforms.

See 46212e92b1 (r34904985)

bump version too.
2019-08-31 11:29:36 +01:00
John Cupitt 23a1636015 fix build with no IM
we had a stray ImageInfo
2019-08-30 12:20:12 +01:00
John Cupitt 5d19bcf955 Merge branch '8.8' 2019-08-30 11:03:24 +01:00
John Cupitt 6ea76f9632 improve data_length handling in jpg load
libjpeg uses unsigned ints for data length, so we must use size_t
everywhere.
2019-08-30 11:00:25 +01:00
John Cupitt 57d1d86885 avoid a harmless out of bounds read
in UCS table building
2019-08-29 15:42:05 +01:00
John Cupitt f135a6e292 add corpus for Coding verification 2019-08-29 15:30:49 +01:00