Nun ja, hier ist der Fehler doch der Ressourcenschutzblock ... lässt man den weg, ist alles OK.
Bzw. der Ressourcenschutzblock enthält selber Code, der zu einem Fehler führen kann.
Wenn vorher alles OK war, dann möchte ich den natürlich sehen, aber ansonsten halt ganz gern den ersten/eigentlichen/ursprünglichen Fehler.
Delphi-Quellcode:
try
MachWas;
finally
try
RäumAuf;
except
end;
end;
So geht es auch, aber Schön ist was Anderes.
Pssst
Delphi-Quellcode:
procedure TForm1.DoLoadSomething( const AFilename : string );
begin
FreeAndNil(FSomething); // hier kann es knallen, aber ist dennoch nil
FSomething := TSomething.CreateFromFile( AFilename ); // da kann es auch knallen, aber egal
end;
Hier gibt es zimindestens keinen ungültigen Zeiger.
Bei dir wird immer dafür gesorgt, dass es eine TSomething-Instanz gibt.