Page 1 of 1

Crash will MagickGetImageBlob after resize psd file

Posted: 2016-01-29T01:35:16-07:00
by kayaklee
version: 6.9.2-9

I have a server to handle image, wrote by golang, it will always crash, will invoke MagickGetImageBlob after resize a psd image.

the image is http://msstestdn.sankuai.com/v1/mss_mt_ ... mage/1.psd

*** glibc detected *** /opt/mos/workspace/imageserver/imageserver: free(): corrupted unsorted chunks: 0x00007fb50c0b2ea0 ***
======= Backtrace: =========
/lib64/libc.so.6[0x3d4f075f4e]
/lib64/libc.so.6[0x3d4f078cf0]
/lib64/libc.so.6[0x3d4f07bb2e]
/lib64/libc.so.6(realloc+0x158)[0x3d4f07bf78]
/usr/lib64/libMagickCore-6.Q16.so.2(ResizeMagickMemory+0x28)[0x7fb539fd4118]
/usr/lib64/libMagickCore-6.Q16.so.2(WriteBlob+0x1b9)[0x7fb539ef1c99]
/usr/lib64/ImageMagick-6.9.2/modules-Q16/coders/psd.so(+0x2aaf)[0x7fb524798aaf]
/usr/lib64/ImageMagick-6.9.2/modules-Q16/coders/psd.so(+0x2bb7)[0x7fb524798bb7]
/usr/lib64/ImageMagick-6.9.2/modules-Q16/coders/psd.so(+0x50cf)[0x7fb52479b0cf]
/usr/lib64/libMagickCore-6.Q16.so.2(WriteImage+0x2b7)[0x7fb539f2c3f7]
/usr/lib64/libMagickCore-6.Q16.so.2(ImageToBlob+0x165)[0x7fb539ef62a5]
/opt/mos/workspace/imageserver/imageserver(_cgo_321b21e35b2d_Cfunc_MagickGetImageBlob+0x2a)[0x41d01a]
/opt/mos/workspace/imageserver/imageserver[0x47ecba]

Re: Crash will MagickGetImageBlob after resize psd file

Posted: 2016-01-29T02:28:00-07:00
by dlemstra
Can you reproduce the issue on the command line? And what is the command that you are using to reproduce it?

Re: Crash will MagickGetImageBlob after resize psd file

Posted: 2016-01-29T04:42:45-07:00
by magick
The PSD coder has patches in the last few releases, perhaps it includes a fix for this problem. We're using ImageMagick-6.9.3-3 Beta. WIth it, your image converts on the command line without complaint and valgrind does not detect any memory errors:
  • valgrind convert 1.psd null: