Einzelnen Beitrag anzeigen

Robert_G
(Gast)

n/a Beiträge
 
#11

Re: Abgeleitet von TObject -> Destroy -> Inherited -&a

  Alt 21. Mai 2005, 20:11
Zitat von Spider:
sorry, wusste doch, ich hab was vergessen. TUpdate hat keinen destructor.
Irgendwo musst du aber auf einen freigegebenen Zeiger zugreifen. In dem gezeigten Code dürfte nichts zu einer AV führen...

Nur mal so am Rande...
Zitat von Spider:
Erzeugen tu ich so:
Delphi-Quellcode:
constructor TLiveUpdate.Create;
begin
  FFiles := TObjectList.Create;
  Updates := TObjectList.Create;
...
Zitat von Spider:
  FreeAndNil(Updates); // steppe per F7 hier her
Merkst du was? Wenn nicht: Cursor auf TObjectList -> [F1] -> Konstruktor anschauen -> dort oder unter "see also" dürfte dir erklärt werden warum du ein MemLeak hast.

Wobei ich trotz des MemLeak keinen Grund für einen Zugriff auf ein nil-Referenz sehe.
Wenn du FreeAndNil wegnimmst und ein normales Free aufrufst... Ändert sich jetzt die Adresse der AV?
Wenn ja greifst du noch auf die Felder zu.
  Mit Zitat antworten Zitat