don't use ping in magickload

too unreliable, sadly
This commit is contained in:
John Cupitt 2018-05-29 19:29:11 +01:00
parent 4058312aee
commit 7e95ae514d
3 changed files with 4 additions and 27 deletions

View File

@ -3,7 +3,7 @@
- revise C++ example [fangqiao]
- strict round down on jpeg shrink on load [davidwood]
- configure test for g++ 7.2 and composite.cpp
- fix a crash with TGA ping [jtorresfabra]
- don't Ping in magickload, too unreliable
12/2/18 started 8.6.3
- use pkg-config to find libjpeg, if we can

View File

@ -662,17 +662,6 @@ if test x"$magick6" = x"yes"; then
LIBS="$save_LIBS"
fi
if test x"$magick6" = x"yes"; then
# more recent magick6s have AcquireImageColormap rather than
# AllocateImageColormap groan
save_LIBS="$LIBS"
LIBS="$LIBS $MAGICK_LIBS"
AC_CHECK_FUNCS(AcquireImageColormap,
AC_DEFINE(HAVE_ACQUIREIMAGECOLORMAP,1,
[define if your magick has AcquireImageColormap.]))
LIBS="$save_LIBS"
fi
if test x"$magick6" = x"yes"; then
# more recent magicks have GetVirtualPixels rather than GetImagePixels
save_LIBS="$LIBS"

View File

@ -335,19 +335,6 @@ parse_header( Read *read )
if( (im->Bands = get_bands( image )) < 0 )
return( -1 );
/* Some ImageMagick loaders (eg. TGA) fail to set the ->colormap
* field on Ping. GetImageChannelDepth() needs this and
* will crash if it's not set.
*
* If there's no colormap, set an empty one.
*/
if( !image->colormap )
#ifdef HAVE_ACQUIREIMAGECOLORMAP
AcquireImageColormap( image, image->colors );
#else /*!HAVE_ACQUIREIMAGECOLORMAP*/
AllocateImageColormap( image, image->colors );
#endif /*HAVE_ACQUIREIMAGECOLORMAP*/
/* Depth can be 'fractional'.
*
* You'd think we should use
@ -808,7 +795,7 @@ vips__magick_read_header( const char *filename,
printf( "vips__magick_read_header: pinging image ...\n" );
#endif /*DEBUG*/
read->image = PingImage( read->image_info, &read->exception );
read->image = ReadImage( read->image_info, &read->exception );
if( !read->image ) {
vips_error( "magick2vips", _( "unable to ping file "
"\"%s\"\nlibMagick error: %s %s" ),
@ -885,7 +872,8 @@ vips__magick_read_buffer_header( const void *buf, const size_t len,
printf( "vips__magick_read_buffer_header: pinging blob ...\n" );
#endif /*DEBUG*/
read->image = PingBlob( read->image_info, buf, len, &read->exception );
read->image = BlobToImage( read->image_info,
buf, len, &read->exception );
if( !read->image ) {
vips_error( "magick2vips", _( "unable to ping blob\n"
"libMagick error: %s %s" ),