Commit Graph

5447 Commits

Author SHA1 Message Date
John Cupitt
e9aaedc60a fix some compiler warnings
from the msvc patch
2018-06-01 19:44:43 +01:00
John Cupitt
0c8552d3fc fix some compiler warnings
from the MSVC patches, and add a changelog line
2018-06-01 16:02:09 +01:00
John Cupitt
364a5daafc
Merge pull request #988 from angelmixu/vs2017
Fixes for being able to build libvips in Visual Studio 2017 with an external project
2018-06-01 12:43:58 +01:00
Angel Sánchez
7125608904 WinSDK stdlib.h has only abs function for int, long, long long and __int64 parameteres, cstdlib has the abs function with a double parameter 2018-05-31 14:00:35 +02:00
Angel Sánchez
258311cec2 performing arithmetic on a void* is not in the standard C, GCC uses an extension for using it, in VS2017 this is non-existant, so the recommended way is to cast to char* to perform increments on the pointer 2018-05-31 13:53:31 +02:00
Angel Sánchez
3282e464a1 added DLL export macro for exporting symbols in VS2017 2018-05-31 13:51:21 +02:00
Angel Sánchez
256cf494a3 use VIPS_PI instead of M_PI as the former is already defined, added missing includes with their macro protection 2018-05-31 13:50:50 +02:00
John Cupitt
86a1a0a7e2 Merge branch '8.6' 2018-05-29 19:30:46 +01:00
John Cupitt
7e95ae514d don't use ping in magickload
too unreliable, sadly
2018-05-29 19:29:11 +01:00
John Cupitt
0486218ff5 don't use Ping in magickload
it's too unreliable :-( we are forced to read every time
2018-05-29 17:20:46 +01:00
John Cupitt
d251b37d92 add vips_argument_get_id()
We had a global we incremented to allocate property ids, but of course that
won't work with DLLs. Instead, add vips_argument_get_id() and call that to
allocate new prop ids.

See:

https://github.com/jcupitt/libvips/issues/985
2018-05-29 16:49:20 +01:00
John Cupitt
4058312aee fix a TGA ping crash
see https://github.com/jcupitt/libvips/issues/980
2018-05-25 16:40:50 +01:00
John Cupitt
73a55e0322 update ChangeLog 2018-05-25 16:06:05 +01:00
John Cupitt
1a95b2df89 fix tga header read
When you ping() an image with imagemagick to get the header, some format
loaders (eg. TGA) don't set all the fields. In this case,
image->colormap was not set and that made GetImageChannelDepth() crash.

Work around this, at least in this case, by allocating a colourmap
ourselves if none is set.

see https://github.com/jcupitt/libvips/issues/980
2018-05-25 16:02:25 +01:00
John Cupitt
c349b31c5f magicksave polishing
- make better use of the magick.c wrappers in magickload
- disable magicksave if ImportImagePixels() is not found, fixing build
  against GM
2018-05-18 17:40:29 +01:00
John Cupitt
e2aafa6ed3 hist_plot fixup
missed a case in the refactor
2018-05-16 15:26:20 +01:00
John Cupitt
7e9efd7a3e Merge branch 'master' of github.com:jcupitt/libvips 2018-05-16 15:10:29 +01:00
John Cupitt
b085908558 remove vips7 stuff from API
You must now include vips7 support explicitly with

	#include <vips/vips7compat.h>

in your code just after including `vips.h`.

The old vips7 names, such as `Rect`, were starting to cause problems
with other packages like opencv.
2018-05-16 15:08:21 +01:00
John Cupitt
deff64d6a2 Merge branch 'master' of github.com:jcupitt/libvips 2018-05-16 07:38:48 +01:00
John Cupitt
3d455e0173 clean up magick2vips a bit
it can use some of the magick.c wrapper
2018-05-16 07:38:03 +01:00
John Cupitt
fd7b04fb9d Merge branch '8.6' 2018-05-14 18:10:13 +01:00
John Cupitt
5b132ccbdc note new config test in changelog 2018-05-14 17:19:06 +01:00
John Cupitt
f6bbfe3148 try to add a test for amzln
the gcc7.2 in amazonlinux 2018.03 seems to fail with signed constants in
vector templates ... add a configure test

see https://github.com/jcupitt/libvips/issues/975
2018-05-14 17:14:42 +01:00
John Cupitt
c2addb84e8 tweak type guesser for icc import 2018-05-14 11:00:32 +01:00
John Cupitt
874a247dd2 Merge branch 'master' of github.com:jcupitt/libvips 2018-05-12 11:14:53 +01:00
John Cupitt
265fb2a825 improve colourspace guessing in icc
icc_transform does a better job of guessing the colourspace of an image -- if
the colourspace has not been set (generic multiband), it'll look at the
image bands instead and guess from that

see https://github.com/jcupitt/libvips/issues/971
2018-05-12 11:05:08 +01:00
John Cupitt
5860126c58 memory option forces memory load
make memory option to loaders force memory load ... previously, it only
switched between memory and disc

see https://github.com/jcupitt/libvips/issues/972
2018-05-11 14:45:15 +01:00
John Cupitt
be4803677d limit memory use on svg load
keep the max memuse down a bit, see https://github.com/jcupitt/libvips/pull/969
2018-05-10 10:50:18 +01:00
John Cupitt
d3c1becb2b
Merge pull request #969 from lovell/svgload-cache
Reduce SVG re-renders with taller cache tiles
2018-05-10 10:42:14 +01:00
Lovell Fuller
76bc64ca3c Reduce SVG re-renders with larger cache tiles 2018-05-09 20:20:01 +01:00
John Cupitt
c3552ad21e note dzsave angle restrictions
see https://github.com/jcupitt/libvips/issues/968
2018-05-09 16:06:20 +01:00
John Cupitt
258edf3325
Merge pull request #963 from lhecker/master
Fixed configure not picking up JPEG_CFLAGS
2018-05-07 16:59:55 +01:00
Leonard Hecker
70d7dd75d2 Fixed configure not picking up JPEG_CFLAGS 2018-05-07 16:16:37 +02:00
John Cupitt
5649847836 make vips_cache_print_nolock() static
not needed in public API
2018-05-06 17:15:35 +01:00
John Cupitt
e1ed5c3735
Merge pull request #960 from lhecker/master
Fixed deadlock in vips_cache_drop_all if vips__cache_dump is true
2018-05-06 17:13:51 +01:00
Leonard Hecker
80a0a24cfa Fixed deadlock in vips_cache_drop_all if vips__cache_dump is true
Both vips_cache_drop_all and vips_cache_print acquire vips_cache_lock
on entry, but vips_cache_drop_all calls vips_cache_print internally if
vips__cache_dump is true, leading to a deadlock situation.
This commit solves the issue using one further level of indirection
and a new vips_cache_print_nolock function.
2018-05-06 12:47:41 +02:00
John Cupitt
88b3644592
Merge pull request #959 from felixbuenemann/fix-png-filters
Fix wrong value for VIPS_FOREIGN_PNG_FILTER_ALL
2018-05-04 07:59:01 +01:00
Felix Bünemann
d3439f4d49 Fix wrong value for VIPS_FOREIGN_PNG_FILTER_ALL
The value is derived by oring all the filter flags:

    0x08 | 0x10 | 0x20 | 0x40 | 0x80 == 0xf8

The value was also checked against PNG_ALL_FILTERS in png.h.
2018-05-02 21:50:08 +02:00
John Cupitt
e496df598b working! 2018-05-01 15:50:48 +01:00
John Cupitt
9ac45f42e3 needs testing still 2018-04-30 17:38:32 +01:00
John Cupitt
b752d2e442
Merge branch 'master' into region-shrink-method 2018-04-27 15:58:24 +01:00
John Cupitt
dd07d6ab7d note g_free() for write_to_memory result
see https://github.com/jcupitt/libvips/issues/929
2018-04-27 11:34:56 +01:00
John Cupitt
4d683559aa add a fontfile option to text
use @fontfile to give a font to load ... note that this just loads the
font, you'll need to set it with @font as well

see https://github.com/jcupitt/libvips/issues/950
2018-04-26 21:03:40 +01:00
John Cupitt
6ee7789095 tiny docs update 2018-04-26 16:28:09 +01:00
John Cupitt
6952c57ca0 better temp filename handling
- make access() fail only if we are certain the file does not exist
- remove the g_mkstemp() from vips__temp_name()

should help selinux

see https://github.com/jcupitt/libvips/pull/930
2018-04-26 16:14:12 +01:00
John Cupitt
9714dcdee3 test depth as well in magickload
We were testing width / height / bands when verifying that it was OK to
load a toilet-roll image ... of course we should test depth as well.
2018-04-26 13:57:33 +01:00
John Cupitt
3a9d322574 magick7 tests for all frames equal before load
it used to crash if pages changed in size
2018-04-26 13:45:50 +01:00
John Cupitt
05fd7d9301 oop typo 2018-04-26 11:49:47 +01:00
John Cupitt
da6f4fd043 add n-pages metadata item
tiff, magick and pdf load now attach an n-pages metadata item recording
the number of pages in the orginal file

see https://github.com/jcupitt/libvips/issues/953
2018-04-26 08:55:31 +01:00
John Cupitt
4f22e8d1dc add jpeg-chroma-subsample to jpegload
The jpeg loader now sets the field jpeg-chroma-subsample to record
chroma subsample.

See https://github.com/jcupitt/libvips/issues/954
2018-04-25 16:04:20 +01:00