lcl: fix memory leak in TListItemSubItems

git-svn-id: trunk@24951 -
This commit is contained in:
paul 2010-04-26 07:52:15 +00:00
parent 0038d3b64b
commit 13e3267ef9

View File

@ -23,6 +23,8 @@
type
TSubItemUpdate = (siuText, siuImage);
{ TListItemSubItems }
TListItemSubItems = class(TStringList)
private
FChangeIndex: Integer;
@ -39,6 +41,7 @@ type
function Add(const S: string): Integer; override;
procedure Clear; override;
constructor Create(const AOwner: TListItem);
destructor Destroy; override;
procedure Delete(AIndex: Integer); override;
procedure Insert(AIndex: Integer; const S: string); override;
property ImageIndex[const AIndex: Integer]: Integer read GetImageIndex write SetImageIndex;
@ -137,6 +140,15 @@ begin
FUpdate := [];
end;
destructor TListItemSubItems.Destroy;
var
n: Integer;
begin
for n := 0 to Count - 1 do
Dispose(PListItemImageObject(pointer(inherited GetObject(n))));
inherited Destroy;
end;
procedure TListItemSubItems.Delete(AIndex: Integer);
begin
if AIndex = Count