Moin...

Sieht unspektulär aus...

Kein Free für eine TCallInstance?
Versuche mal das:
Delphi-Quellcode:
procedure Tbc_AsteriskCallDictionaryDataModule.DataModuleCreate(Sender: TObject);
begin
inherited;
fCallInstanceDictionary := TCallInstanceDictionary.Create([doOwnsValues]); // die Values werden von der Liste freigeben
end;
procedure Tbc_AsteriskCallDictionaryDataModule.DataModuleDestroy(Sender: TObject);
begin
inherited;
// fCallInstanceDictionary.Clear; // vor dem Free brauchst du das nicht
fCallInstanceDictionary.Free;
end;
Funktioniert, der Fehler kommt jetzt nicht mehr, danke.

Lag es wirklich nur an doOwnsValues?
Muss ich die TCallInstance freigeben, ich dachte bei einer lokal erstellen Variable/Klasse passiert das nach Beendigung automatisch. Gilt das nicht für lokale Klassen?