Commit Graph

151 Commits

Author SHA1 Message Date
John Cupitt fc5a4a917a make file format readers close fds early
we were using two fds per open image, now we just use one

jpg, magick, tiff, png
2015-02-26 14:09:01 +00:00
John Cupitt 6ff1d5320b don't call jpeg_finish_decompress()
all it does is verify the trailing bytes in the file

see https://github.com/lovell/sharp/issues/151
2015-01-20 16:55:35 +00:00
John Cupitt ad86f45cd9 add autorot as an operator as well 2014-10-19 10:35:10 +01:00
John Cupitt 0a51536162 seems to work 2014-10-17 13:17:44 +01:00
John Cupitt 14d7ce1e91 first try, not very good 2014-10-16 19:16:45 +01:00
John Cupitt 158237254d fix jfif resunit read
see https://github.com/jcupitt/libvips/issues/170

the previous fix just did exif resolution "none", we need jfif "none" as
well
2014-09-09 16:46:16 +01:00
John Cupitt 6269c852cc support exif res unit "none"
well why would you want that, but it seems some images use it
2014-09-09 12:18:21 +01:00
John Cupitt e9ce212b62 make out of order read a fatal error
For png and jpg, out of order must always be a fatal error, since you
can't read from a specific y position.

This was a g_assert() before which meant that this test was missing from
production builds. It's now always a fatal error.
2014-09-02 09:37:08 +01:00
John Cupitt c85dd26627 oops, better filename set on foreign load
we were setting the filename in the wrong place
2014-06-10 13:46:05 +01:00
John Cupitt 9dea549063 oops savers were not setting filename
when we added all the buffer loaders, we cul dno longer set filename in
VipsForeign, it's now the responsibility of each load class
2014-06-10 11:26:09 +01:00
John Cupitt d0f50febbb added vips_foreign_load_buffer() 2014-04-22 16:27:43 +01:00
John Cupitt 499b977043 back out the complex linear stuff
needs cooking for a while longer in a branch
2014-03-04 14:32:43 +00:00
John Cupitt 4d85011a51 disable sequential skipahead
this was causing some problems on very-many-core systems

still need to update operation flags and disable seq mode for
insert/extract/etc.
2014-02-25 11:12:41 +00:00
John Cupitt 0ef0328396 oops 2014-02-24 21:58:07 +00:00
John Cupitt d843521f77 jpeg load from buffer shouldn't modify buffer
fill_input_buffer() could write to the input buffer

see: https://github.com/jcupitt/libvips/pull/107

thanks Lovell
2014-02-24 17:10:07 +00:00
John Cupitt ae6ea3ba87 support many Radiance readers active at once
we had some globals for the Rad reader state, whcih was fine with the
old reader, but with the new sequential one you can have several active
at once
2014-01-23 15:06:37 +00:00
John Cupitt 12454d3225 more jpeg read sanity checking 2014-01-23 14:19:55 +00:00
John Cupitt 63591f6ac1 FATSTRIP for jpeg read 2013-12-16 16:22:44 +00:00
John Cupitt eb3ad6d64f add lots of instrumentation
also svg output
2013-11-26 14:57:56 +00:00
John Cupitt 12cf71a6a9 combin copy_fields and demand_hint
We had two API calls, vips_image_copy_fields() and vips_demand_hint().
They are now combined in the single vips_image_pipeline() call.

All operations are now slightly smaller and simpler.
2013-10-22 09:29:40 +01:00
John Cupitt d89007a8d4 catch jpeg startup errors
thanks mvgulik
2013-10-15 13:47:15 +01:00
John Cupitt 6c0eced22c build fixes for OS X
stupid libjpeg and their stupid bool type argh
2013-10-04 11:54:01 +01:00
John Cupitt 440b800e0e add a new unbuffered seq mode
things like

	vips copy huge.png x.v

now run with only a small line cache
2013-09-29 11:04:11 +01:00
John Cupitt 6167d4d97c Fix three minor memleaks 2013-07-15 22:01:00 +01:00
John Cupitt 02095763c9 null-terminate exif strings
libexif strings are not null-terminated, add a \0 before adding to the
vips image

thanks Mike
2013-07-06 11:51:34 +01:00
John Cupitt 0c6da0c330 fix demand hints for shrink
"vips shrink" was broken due to wonky demand hints, thanks Jan
2013-04-08 13:08:24 +01:00
Benjamin Gilbert 8cc76a6ba3 Update address for Free Software Foundation
Also update LGPLv2.1 license text from the copy currently on the GNU
website.
2013-03-07 00:40:19 -05:00
John Cupitt 20ce700e23 jpeg tag read/write cleanups 2012-11-22 09:15:02 +00:00
John Cupitt c3ef2be4ab preserve jpeg ipct data
now copies over ipct data from app13, thanks Gary
2012-11-21 21:33:50 +00:00
John Cupitt 65b4056c84 jpeg read is less fussy about exif data
even read truncated exif
2012-11-21 18:34:20 +00:00
John Cupitt 7025fe4081 more exif read improvements
some jpegs use a signed long to store the resolution unit (??), remove
the checks on tag format for res unit
2012-11-16 19:53:59 +00:00
John Cupitt 74f545fc6f keep exif rationals as a/b
we went via double before, which caused awful problems trying to
generate nice rationals again on save

keep everything as a/b as long as we can
2012-11-16 13:50:49 +00:00
John Cupitt fcc33020bd better exif handling
- track ifd numbers for each item of exif
- be more careful about which ones we update
- don't update xres/yres in vips_shrink()
2012-11-16 10:03:31 +00:00
John Cupitt 2048ec2356 jpeg read oops 2012-11-05 14:41:31 +00:00
John Cupitt 8e0de67f65 sync 2012-10-30 17:16:55 +00:00
John Cupitt 89065b391a sequential needs a strip size param
strip tiff can only read in strip-sized chunks
2012-08-24 16:06:29 +01:00
John Cupitt 39b05f5172 tuning, sort out demand hints
and disable extract_area seq mode
2012-08-24 12:46:10 +01:00
John Cupitt 8653b23810 better handling of jpeg warnings 2012-08-23 21:44:14 +01:00
John Cupitt f5f0dda551 experiment with thread stalling 2012-08-21 16:18:25 +01:00
John Cupitt 463058c149 note and use res unit on jpg load/save
previously, jpeg save always used pixels/inch and jpeg load converted to
vips pixels/mm

now on jpg load the image's res unit is recorded in
VIPS_META_RESOLUTION_UNIT, and on jpg save the res unit is set from
VIPS_META_RESOLUTION_UNIT (or defaults to inches).

you can now copy a cm-preferring tiff to a jpg and the unit is preserved
2012-08-07 14:10:19 +01:00
John Cupitt 3694a2edc5 add sequential mode to vips7
the tiff and jpg readers let you give :seq as well
2012-06-24 09:44:50 +01:00
John Cupitt 2f897315ad fix a crash with corrupted jpg files
three was a double-free crash with a scrambled jpg file, thanks Grigoriy
2012-06-19 08:52:06 +01:00
John Cupitt 8c6e3738dd fix up ordering issues in seq mode
read order should be guaranteed now, hopefully
2012-02-20 15:03:29 +00:00
John Cupitt 8af5522a96 sequential support for the jpg reader 2012-02-19 22:17:20 +00:00
John Cupitt bbadb8d681 jpeg2vips now keeps a load struct about
so we are ready to add lazy read
2012-02-19 10:54:41 +00:00
John Cupitt 774e2fe495 read jfif resolution
read jfif, if available, before we read exif resolution
2012-01-09 10:34:47 +00:00
John Cupitt 0983b50905 Merge remote-tracking branch 'origin/gobject-introspection' into goi-merge
Conflicts:
	TODO
	libvips/arithmetic/im_recomb.c
	libvips/arithmetic/im_stats.c
	libvips/deprecated/im_measure.c
	libvips/include/vips/header.h
	libvips/include/vips/image.h
	libvips/include/vips/object.h
	libvips/iofuncs/header.c
	libvips/iofuncs/image.c
	libvips/iofuncs/object.c
2011-12-24 17:36:55 +00:00
John Cupitt a62f5f8832 remove wio_output 2011-12-21 12:08:29 +00:00
John Cupitt 05fbb6b3bc fix up openslideload
there was a problem with the tile cache ... plus some small tidies
2011-12-12 11:34:28 +00:00
John Cupitt 935c713e71 sort out jpegload 2011-11-29 12:11:33 +00:00
John Cupitt 56fb2126b8 rename VipsFile as VipsForeign 2011-11-29 11:43:08 +00:00