Hi All,
On recent FPC 2.6.1 I notice a strange behavior with TStringList.Destroy TStringList.Destroy, calls method TStringList.Clear, but the problem is that TStringList.Clear call methods Changing and Changed
This affect Zeos 6.6.6, I presume is because Zeos try to read Params from the SQL.Text, every time a Change occurs
I suggest a new InternalClear method, without calling Change/Changed that can be used in Destroy and Clear methods...
Some thing like this:
destructor TStringList.Destroy;
Var I : Longint;
begin
? FOnChange:=Nil;
? FOnChanging:=Nil;
? InternalClear;
? Inherited destroy;
end;
Procedure TStringList.Clear;
Var I : longint;
begin
? if FCount = 0 then Exit;
? Changing;
? InternalClear;
? Changed;
end;
Procedure TStringList.InternalClear;? (Private)
Var I : longint;
begin
? if FCount = 0 then Exit;
?
? if FOwnsObjects then
??? begin
????? For I:=0 to FCount-1 do
??????? begin
????????? Flist^[I].FString:='';
????????? freeandnil(Flist^[i].FObject);
??????? end;
??? end
? else
??? begin
????? For I:=0 to FCount-1 do
??????? Flist^[I].FString:='';
??? end;
? FCount:=0;
? SetCapacity(0);
end;?
[]s Daniel
Conhe?a o Projeto ACBr - Automa?ao Comercial Brasil DJSystem a Loja Patrocinadora do ACBr
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120330/689f64eb/attachment.html>
