Deine Vermutung ist falsch, da wird kein relevantes Objekt freigegeben.
Es geht hier leider nicht um "schön" sondern um falsch.
Somit kann nicht ausgeschlossen werden, dass die MemLeaks von den vergewaltigten Destruktoren kommt.
Ein Destruktor wird so implementiert und nicht anders
Delphi-Quellcode:
destructor Destroy; override;
...
destructor TFoo.Destroy;
begin
inherited;
end;
Macht man das anders dann kann es rumsen (MemLeaks).
Desweiteren muss man immer aufpassen wo/wer ein Objekt erzeugt. Da/der sollte sich auch um die Freigabe kümmern.
Und natürlich kann man die MemLeaks da auch rausbekommen
- komplett neuschreiben ohne diese Units
- alle Units durcharbeiten, korrigieren und dann den Source überprüfen
Ich würde mich aber wundern, wenn du hier jemand findest, der das für Dich übernimmt, denn das ist in 5-10 Minuten nicht erledigt und du wirst wahrscheinlich auch keine Lust haben dafür zu bezahlen, genauso wie hier wohl keiner Lust hat ein paar Tage daran herumzuschrauben.
Sorry to tell bad news