Delphi .NET (2) Database (71) Delphi IDE (90) Network (39) Printing (3) Strings (12) VCL (83) Windows with Delphi (280)
Exchange Links About this site Links to us 
|
Memory leak in TCheckListBox
This article has not been rated yet. After reading, feel free to leave comments and rate it.
I just found a memory leak in TCheckListBox (while using Delphi 3).
Every time you check an item at runtime, a wrapper is created in routine TCheckListBox.GetWrapper in CheckLst.pas.
These wrappers were supposed to be freed in procedure TCheckListBox.DestroyWnd; but this procedure is never called. Therefore all these pointers will never be freed.
The workaround to this is to manually clear the listbox when the form is destroyed:
 | |  | | procedure TForm1.FormDestroy(Sender: TObject);
begin
CheckListBox1.Items.Clear;
inherited;
end; | |  | |  |
Comments:
|