Hello list

 

I have a program written in C++ 7 

 

Everything is working fine, but when I am checking for a memory leaks -
first one came from MagickWandGenesis. Nothing is actually happens after
eliminating this function not in terms of functionality not in terms of new
memory leaks.

But then after "boundcheckers" shows a 3 memory leak exiting program:

1)    NewMagickWand -> wand->id=AcquireWandId();->
AcquireSemaphoreInfo(&wand_semaphore);

2)     NewMagickWand-> (void) AddValueToSplayTree(wand_ids,(const void *)
id,(const void *) id);

   3)   NewMagickWand-> wand->id=AcquireWandId();->
wand_ids=NewSplayTree((int (*)(const void *,const void *)) NULL,

          (void *(*)(void *)) NULL,(void *(*)(void *)) NULL);

 

 

 

Sorry can't figure it out myself how to fix it.

If anybody got across this issue?? 

 

Thank you,

Eugene Feiguelman

 

 

 

 

 

 

The short list of the function would be below.

 

 

/// image magick :

      InitializeMagick(exePath);

      

      MagickWandGenesis

 

      GetExceptionInfo(&exception); 

    ....

      DestroyExceptionInfo(&exception);

      

   //read image 

    mwandBase=NewMagickWand();  

    MagickReadImage(mwandBase,(LPCTSTR)file);

  

 

      // draw text on to      mwandBase

 

      if(dwand != NULL) {

            DestroyDrawingWand(dwand);    

            dwand = NULL;

      }

       dwand = NewDrawingWand();

 

      

      DrawSetTextEncoding(dwand, "UTF-8");

      DrawSetFont(dwand, font.lfFaceName);

      DrawSetFontSize(dwand, rowsM/10); 

      DrawSetFontStyle(dwand, font.lfItalic?ItalicStyle: NormalStyle); 

      DrawSetFontWeight(dwand, font.lfWeight);

      DrawSetGravity(dwand, SouthGravity);

      

      DrawAnnotation(dwand..., text1);

      DrawAnnotation(dwand, ..., text2);

      MagickDrawImage(mwandBase,dwand);

      

      

 

   // resize image (mwand)

 

      if mwand!=NULL{

      MagickRemoveImage(mwand);

      ClearMagickWand(mwand);

      mwand= DestroyMagickWand(mwand);

      mwand = NULL;

      }

      mwand = CloneMagickWand(mwandBase);

 

      

      FilterTypes ft = TriangleFilter;

      double imblur = 0.4;

 

      MagickResizeImage(

            mwand,

        size.cx,

            size.cy,

            ft,

            imblur);

 

       MagickGetImageWidth(mwand);

       MagickGetImageHeight(mwand);

      

      //extract (PixelPacket *) and dispaly

   

      MagickGetImagePixels(mwand,0,0,columnsM,
rowsM,"RGBO",ShortPixel,pixels);

    

      PixelWand * pxWand = NewPixelWand();

      MagickGetImageBackgroundColor(mwand,pxWand);

      

      PixelPacket bkColor;

      PixelGetQuantumColor(pxWand,&bkColor);

      

      

      //dispaly with SetPixelV(

      ............

      ............

      

      

      ClearPixelWand(pxWand);

      DestroyPixelWand(pxWand);

      

      

      ....

      ~ clear stuff  in the end

      

      

      if(dwand != NULL) {

        

            

            DestroyDrawingWand(dwand);    

            dwand = NULL;

      }

            

      if(mwand != NULL) {

            

            MagickRemoveImage(mwand);

            ClearMagickWand(mwand);

            mwand = DestroyMagickWand(mwand);

            mwand = NULL;

      }

      if(mwandBase != NULL) {

            MagickRemoveImage(mwandBase);

            ClearMagickWand(mwandBase);

            mwandBase = DestroyMagickWand(mwandBase);

            mwandBase = NULL;

      }

      

      

      

      

      MagickWandTerminus();

      .......

      DestroyMagick();

 

 

 

 

Best Regards,

 

Eugene Feiguelman

 

Software Team Leader

Mailing Innovations

*   (905) 677-44-41 ext. 238

* [EMAIL PROTECTED]

* 20-3397 American drive, Mississauga ,ON L4V 1T8

 <http://www.mailinv.com/>  http://www.mailinv.com/

This email and any files transmitted with it may contain PRIVILEGED or
CONFIDENTIAL information and may be read or used only by the intended
recipient.

 

_______________________________________________
Magick-users mailing list
[email protected]
http://studio.imagemagick.org/mailman/listinfo/magick-users

Reply via email to