-Warum ist der Post nach dem Bearbeiten hier plötzlich doppelt?-
Zitat:
* siehe Cursorposition/Markierung im Quellcode
* siehe Stacktrace
Die Cursorposition im Code wird beim Werfen einer
Exception nicht verändert.
Der Fehler tritt wohl hier auf. Er tritt manchmal auf aber nicht immer:
- Classes.pas
Delphi-Quellcode:
procedure TList.Delete(Index: Integer);
var
Temp: Pointer;
begin
if (Index < 0) or (Index >= FCount) then // <==
// ...
Ich werde mal meine Listen überprüfen.
Beim Beenden der Anwendung gibt es aber keine Speicherlecks.
-------------
Ich glaube den Fehler jetzt mit dem Debugger gefunden zu haben.
Ich werde jetzt für etwa eine Stunde Tests durchführen und dann Feierabend machen.
Ich melde mich dann hier im selben Beitrag zurück.
-------------
112 automatisierte Tests am Stück später. Ich denke ich kann sagen, dass der Fehler behoben ist.
Es war nicht das Close-Event und auch kein Timer. Hier wurde ich vom System auf die falsche Spur geschickt.
Es war einfach nur eine TList, aus welcher doppelt Items gelöscht wurden.
Dass das aber in einem APPCRASH resultiert und nicht in einer normalen
Exception, war ein bisschen seltsam.