[Lazarus] heaptrc - Is it even worth using?

Michael Van Canneyt michael at freepascal.org
Mon Oct 5 16:56:37 CEST 2009



On Mon, 5 Oct 2009, Lee Jenkins wrote:

>
> Does anyone else have any trouble reading heaptrc output?  The only thing 
> that I can see of use is that it tells me there /is/ a leak.  However, trying 
> to figure out where it is according to heaptrc output seems more difficult 
> and time consuming that searching through the code.
>
> I'm not criticizing per se, just frustrated that I've spend 40 mins looking 
> at a heaptrc output file with still no clue as to where the leak may be.
>
> Heap dump by heaptrc unit
> 4669 memory blocks allocated : 1093920/1110888
> 4621 memory blocks freed     : 1092756/1109608
> 48 unfreed memory blocks : 1164
> True heap size : 360448 (112 used in System startup)
> True free heap : 355808
> Should be : 356368
> Call trace for block $030FFC70 size 45
>  $0040734F
>  $005E9916  TTIOIDGENERATORGUID__ASSIGNNEXTOID,  line 489 of 
> M:/lazarus/components/tiOPF2/Core/tiOIDGUID.pas
>  $005CFA38  TTIOBJECT__CREATENEW,  line 2036 of 
> M:/lazarus/components/tiOPF2/Core/tiObject.pas
>  $005CFAF5  TTIOBJECT__CREATENEW,  line 2042 of 
> M:/lazarus/components/tiOPF2/Core/tiObject.pas
>  $004237AF  TFLEXOBJECTMAPPING__REGISTERPROPERTY,  line 259 of 
> M:/lazarus/projects/flexserver/src/flex_persistence.pas
>  $00423293  TMAPPINGREADER__REGISTERMAPPINGS,  line 128 of 
> M:/lazarus/projects/flexserver/src/flex_mapping_reader.pas
>  $00422EBB  TMAPPINGREADER__LOADMAPPINGS,  line 66 of 
> M:/lazarus/projects/flexserver/src/flex_mapping_reader.pas
>  $00422C86  TFORM1__BUTTON1CLICK,  line 40 of main_form.pas

What is not clear about this ?

In line 489 of M:/lazarus/components/tiOPF2/Core/tiOIDGUID.pas
a memory block of 45 bytes is allocated and never freed.

Michael.




More information about the Lazarus mailing list