Page 1 of 1

Memory assertion with --enable-embeddable

Posted: 2010-10-04T07:58:48-07:00
by velter
I'm using a custom build of imagemagick on windows/mingw :

./configure --disable-ltdl-install --disable-shared --disable-installed --enable-embeddable --with-quantum-depth=8 --without-modules --without-magick-plus-plus --without-perl --without-dps --without-gslib --without-xml --without-x --with-wmf --without-jp2 --disable-openmp

I'm currently using 6.5.7 and got an assert in memory.c line 756 (RelinquishMagickMemory sanity check for embeded memory allocator) while reading a jp2 image.

I tried to build the latest release (6.6.4) and things are worse. Now I get an assert while calling MagickWandGenesis.

By looking at the code there seem to be a lot of mismatch in memory allocation/free.

For example in locale.c : Allocate Node with AcquireAlignedMemory and free it with RelinquishMagickMemory. AcquireAlignedMemory use malloc while RelinquishMagickMemory use the internal allocator. There seem to be a lot of those mismatch.

cyril

Re: Memory assertion with --enable-embeddable

Posted: 2010-10-04T08:44:26-07:00
by magick
We can reproduce the problem you reported and will have a patch to fix the problem in the next point release of ImageMagick within a week or two. Thanks.