Commit Graph

4688 Commits

Author SHA1 Message Date
John Cupitt 134ce0560c use expat for xml read
we were using libxml for xml load, use expat instead, we get it for free
with glib
2017-02-25 13:07:43 +00:00
John Cupitt dc2b567ee2 start looking at xml parse use in vips.c 2017-02-24 14:57:20 +00:00
John Cupitt 420a918cbf Merge branch 'master' into try-expat 2017-02-24 14:31:33 +00:00
John Cupitt dbbe8b77c1 vipsheader could crash on bad field names
we were not checking the return of vips_image_get_as_string()
2017-02-24 14:30:26 +00:00
John Cupitt 9ba8d32083 add expat to package deps 2017-02-24 14:28:08 +00:00
John Cupitt 6cbda61ec1 fix thumbnail crop on rotated images
crop after rotate so we don't need to rotate the crop box

thanks ElHeineken!

see https://github.com/jcupitt/libvips/issues/608
2017-02-23 20:26:59 +00:00
John Cupitt 4bcbcbbf49 try to fix IM load of ico files
8-bit ico files were being reported at 32-bit, because we used the
->depth field to get pixel depth

try using GetImageChannelDepth() instead, who knows, it might work

see https://github.com/jcupitt/php-vips/issues/34
2017-02-23 20:05:35 +00:00
John Cupitt 156f729d75 note new seq thing 2017-02-23 20:05:11 +00:00
John Cupitt 12805808da better fix for the reorder memleak
we could try reordering during image close, and after the arrays had
been freed
2017-02-23 17:35:52 +00:00
John Cupitt 4bbd56fb0a handle transparency in vips_region_shrink()
we weren't multiplying through alpha in vips_region_shrink(), causing
fringing on pyramids with transparent elements

thanks sickrandir!

see https://github.com/jcupitt/libvips/issues/599
2017-02-23 17:04:25 +00:00
John Cupitt f84825a634 fix a small memleak in reorder
if set_input was called more than once, it could leak the arrays

thanks @gczuba!

see https://github.com/jcupitt/libvips/issues/607
2017-02-23 07:50:35 +00:00
John Cupitt 09774740a7 better cache sizing 2017-02-22 20:11:52 +00:00
John Cupitt 4a9d10a0c8 Merge branch 'master' into remove-seq-stalling 2017-02-22 16:11:49 +00:00
John Cupitt abfabd98ce tiny docs update 2017-02-22 13:31:27 +00:00
John Cupitt a155521baf fix translation files 2017-02-22 13:28:17 +00:00
John Cupitt 3564339362 notes 2017-02-22 11:41:41 +00:00
John Cupitt 2a85d41570 Merge branch 'master' into remove-seq-stalling 2017-02-22 10:37:54 +00:00
John Cupitt 09eafa4f9f fix xoff/yoff in mosaic output
we didn't record xoff / yoff correctly for negative offsets

see https://github.com/jcupitt/libvips/issues/606
2017-02-22 10:27:01 +00:00
John Cupitt ec75e3a2cc notes 2017-02-22 09:53:13 +00:00
John Cupitt cb83918a3f remove readbehind 2017-02-21 17:14:33 +00:00
John Cupitt a4d3c2a754 more UNBUF fixes
try to keep compat better, remove the single-thread-first-tile idea
2017-02-21 16:53:48 +00:00
John Cupitt 959f412380 remove stalling 2017-02-21 15:03:15 +00:00
John Cupitt c6eb9ee0f2 experiment with removal of seq stall 2017-02-21 09:44:21 +00:00
John Cupitt 6691e07d72 notes on seq removal 2017-02-21 09:14:26 +00:00
John Cupitt f45f6ad52f oop, forgot to comment out DEBUG
thanks Lovell
2017-02-21 08:24:46 +00:00
John Cupitt 197a21ed0e don't load 0 length profiles
some tiffs have 0 length icc profiles ... test profile length before we
try to load it

see https://github.com/jcupitt/libvips/issues/605
2017-02-20 22:36:35 +00:00
John Cupitt 3f92cfc935 oops, don't copy header fields
in prev commit
2017-02-20 13:42:19 +00:00
John Cupitt abf6a250c2 fix wrapmany compat
it was not setting reorder hints, then failing on recomp

the nip2 display control bar was broken by this, for example
2017-02-20 13:32:12 +00:00
John Cupitt 6d95cfd0c5 tweak docs
see https://github.com/jcupitt/libvips/issues/558
2017-02-20 11:10:04 +00:00
John Cupitt 6fb2122a5f notes 2017-02-19 17:51:36 +00:00
John Cupitt 53f374434d fix build on centos7
see https://github.com/jcupitt/libvips/issues/601
2017-02-19 10:20:37 +00:00
John Cupitt 646960077d fix cache hint for shrink
shrink had UNBUFFERED as a cache hint, but for non-int shrinks it used
affine, so you could get out of order reads

set regular SEQ as the cache hint, and switch to reduce for the final
resize in the non-int case

see https://github.com/jcupitt/libvips/issues/596
2017-02-09 09:10:03 +00:00
John Cupitt 8834b55c47 oops
ahem missed a rename
2017-01-30 11:28:23 +00:00
John Cupitt 21a5d0dfe4 speeling 2017-01-29 12:24:25 +00:00
John Cupitt e210411404 enable bigtiff for large, uncompressed writes
if compression is off and the image is >4gb, make sure bigtiff is
enabled

this won't always work: if the image is just under the 4gb limit, it
could be pushed over the edge by a lot of metadata. And of course the
libtiff vips is using could be missing bigtiff support

see https://github.com/jcupitt/libvips/issues/591
2017-01-29 12:20:57 +00:00
John Cupitt 2b482fc2cf seems to work! 2017-01-27 16:43:37 +00:00
John Cupitt 9cc868a7e3 Merge branch 'master' into add-tiff-scanline-load 2017-01-27 11:36:28 +00:00
John Cupitt 756e69cf96 make pngload from buffer set flags
and remove some dead code from jpegload
2017-01-27 11:15:48 +00:00
John Cupitt 94434c2359 tiff buffer loader supports get_flags
the tiff buffer loader was not setting any flags, so seq was using a
temp file (for example)

see https://github.com/jcupitt/libvips/issues/590
2017-01-27 10:32:47 +00:00
John Cupitt ec093100fb use fits_open_diskfile(), not fits_open_file()
so we can open any filename ... fits_open_file() parses fits extended
filename formats

see https://github.com/jcupitt/libvips/issues/584
2017-01-26 20:17:29 +00:00
John Cupitt 386d44ef38 more dbg in foreign.c 2017-01-26 18:29:43 +00:00
John Cupitt a34cc2fdf3 notes 2017-01-26 12:07:14 +00:00
John Cupitt 0108d1d605 experiment with scanline load for tiff
trying to get memuse down for images with huge rows-per-strip
2017-01-26 12:05:14 +00:00
John Cupitt 276fc83fa1 more VIPS_INIT() docs
see https://github.com/jcupitt/libvips/issues/588
2017-01-26 08:46:27 +00:00
John Cupitt 7136053451 sort max/min results by y and x coordinate
previously the list of maxima or minima found by max/min were in found
order, so essentially random

they now sort equal values by y then x coordinate, so the results are
consistent between runs, provided there are fewer maxima / minima than
are being tracked
2017-01-24 14:25:15 +00:00
John Cupitt fb544e3f25 add note about non-determinism in stats
added a note to the docs for max/min/stats about non-determinism in the
results if there are many maxima/minima

thanks Mark
2017-01-24 12:14:55 +00:00
John Cupitt 61d9f03ef8 tiny fixes 2017-01-24 11:02:40 +00:00
John Cupitt c9ce8f70a1 fix an off-by-one error in hist_local
an odd window width caused an off-by-one error in histogram construction
2017-01-24 10:51:12 +00:00
John Cupitt 36761bcfd7 make vips_gaussnoise() pixels reproducible
previously, pixel values were regenerated on every calculation, so they
changed on recomputation

pixel values are now generated from the pixel (x, y) coordinate plus a per-call
seed

thanks MvGulik, see

https://github.com/jcupitt/nip2/issues/60

https://github.com/jcupitt/libvips/issues/583
2017-01-24 09:36:25 +00:00
John Cupitt c963678549 more hist_local fixups
add tests, add restrict
2017-01-22 10:36:07 +00:00