Einzelnen Beitrag anzeigen

Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Kann "Clear" Fehler auslösen?

  Alt 29. Jul 2005, 11:05
Zitat von Pseudemys Nelsoni:
Eine Objektliste kann nil Objekte enthalten, der aufruf von Clear führt dabei aber nicht zu einer AV, da sie das ganz gut handlen kann bzw prüft ob ein Objekt breits nil ist, oder nicht.
Hi! Wie gibst du die TChannel Objekte frei? Hast du beim Erstellen der TObjectList den Parameter OwnsObjects auf true oder false gesetzt?

Wie KrasserChecker gesagt hat könnte es sein, dass du an anderer Stelle bereits einen TChannel mit Free() freigibst. Dadurch wird die Referenz in der TObjectList zwar ungültig, aber nicht nil. TObjectList.Clear() bzw. TObjectList.Free() würde bei OwnsObjects = true dann versuchen, das TChannel Objekt nochmal freizugeben ==> AV.
Dani H.
At Least I Can Say I Tried
  Mit Zitat antworten Zitat