Ich weiß ja nicht, wie TOraQuery definiert ist, wir haben das hier nicht.
Wenn die beim Setzen des Property "Session" sich das Objekt einfach speichern (oder anderweitig weiter leiten) und das dann darüber freigegeben wird, obwohl du noch das Property "Session" auf nil setzt hast du eh verloren.
Ansonsten mal osnPenta nicht freigeben (nur auf nil setzen) und schauen, ob es ein Speicherleck gibt (ReportMemoryLeaksOnShutdown auf True). Wäre vielleicht noch interessant.
Edit:
...Wird die Problemstelle auskommentiert, beendet sich das Programm ohne jeglichen Fehler. ...
Never mind!
LG Incocnito