Delphi-Quellcode:
try
jsonArr:= TJSONArray.Create;
jsonArr.owned:=false;
jsonArr.Add(p1);
jsonArr.Add(p2);
json.AddPair('path', jsonArr);
Mit dem AddPair bekommt das json das jsonArr ja übergeben. Wegen Owned := False gibt es das in seinem Destroy zwar nicht frei, aber reagiert doch verschnupft, wenn es jemand außerhalb freigibt ohne ihm das vorher durch ein RemovePair mitzuteilen.