Commit Graph

6160 Commits

Author SHA1 Message Date
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
John Cupitt
349e76bb85 Merge branch '8.8' 2019-08-29 15:30:20 +01:00
John Cupitt
3161de3b52 verify bands/format for coded vips images
WHen loading a vips image with Coding set, make sure that Bands and
BandFmt are correct.
2019-08-29 15:28:55 +01:00
John Cupitt
f8bdc00866 void /0 in Yxy2XYZ
Now sets 0 rather than inf.
2019-08-29 14:20:30 +01:00
John Cupitt
9a5dca1ef8 Merge branch '8.8' 2019-08-28 10:05:12 +01:00
John Cupitt
46212e92b1 fix default sharpen
sharpen with sigma 0.5 was doing nothing, since the new int precision
rules meant that we generated a point-point convolution.

This patch increases the int precision for sharpen, so we now work with
sigma down to 0.5.

Also: restore input colourspace. Previously, the output image was always
LabS (the computation space for sharpen). Now, it transforms back to the
input space. This is more in line with how other operators work.

Thanks 2h4dl for pointing this out.

See https://github.com/libvips/pyvips/issues/123
2019-08-28 09:16:40 +01:00