Aah, deshalb muss ich auch diese inline generierten Dinge nicht extra freigeben (zb das TJSONBool-Objekt in
json.AddPair(prop, TJSONBool.Create(cv='true'));
). Das ist praktisch.
Und wenn ich also Owned=false setze, gebe ich es (wie für mich normal und nachvollziehbar) am Ende erst frei.
[getestet] Schön, es knallt nicht mehr.
Als Folge von Owned=false löst jetzt aber die Wertübergabe requestString:=json.ToString eine Zugriffsverletzung aus. Wieso?
Zerstört die Freigabe von P1 und P2 jetzt das plötzlich übergeordnete Objekt json (das ich auch Owned=false gesetzt habe)?