Memory leaks when creating a simple empty image
Posted: 2014-01-13T04:38:36-07:00
I'm testing magick++ memory management under linux and mac. On OSX I'm using this:
And testing a simple program that creates an image:
Running valgrind like this:
I get this:
The memory lost is a considerable amount of the total memory used.
You can see the full valgrind output here: https://gist.github.com/juan-cardelino/8398855
Any ideas?
Code: Select all
> convert --version
Version: ImageMagick 6.8.7-7 Q16 x86_64 2014-01-10 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC Modules
Delegates: bzlib fftw fontconfig freetype jng jp2 jpeg lcms ltdl png tiff x xml zlib
Code: Select all
#include <string>
#include <iostream>
#include <list>
#include <Magick++.h>
using namespace std;
using namespace Magick;
int main(int argc,char **argv)
{
try {
InitializeMagick(NULL);
// Create base image (white image of 300 by 200 pixels)
Color c=Color("white");
Image image( Geometry(300,200), c );
//MagickCore::DestroyMagick();
}
catch( exception &error_ )
{
cout << "Caught exception: " << error_.what() << endl;
return 1;
}
return 0;
}
Code: Select all
valgrind --leak-check=full --tool=memcheck --dsymutil=yes test_memory
Code: Select all
==2931== LEAK SUMMARY:
==2931== definitely lost: 10,858 bytes in 4 blocks
==2931== indirectly lost: 4,548 bytes in 13 blocks
==2931== possibly lost: 10,808 bytes in 1 blocks
==2931== still reachable: 836 bytes in 14 blocks
==2931== suppressed: 26,222 bytes in 374 blocks
==2931== Reachable blocks (those to which a pointer was found) are not shown.
==2931== To see them, rerun with: --leak-check=full --show-leak-kinds=all
You can see the full valgrind output here: https://gist.github.com/juan-cardelino/8398855
Any ideas?