Seems that I found a workaround. When calling the NewSubChunk in the following syntax:
SubChunks[NewSubChunk]^.read(fl); /// raise an exception. While MyIndex := NewSubChunk; SubChunks[MyIndex]^.read(fl); /// raise an exception. Doesn't raise any excetion…. Maybe the experts could say why, I don't know why… Amit From: fpc-pascal-boun...@lists.freepascal.org [mailto:fpc-pascal-boun...@lists.freepascal.org] On Behalf Of ik Sent: Wednesday, February 02, 2011 5:48 PM To: FPC-Pascal users discussions Subject: Re: [fpc-pascal] dynamic array and new/dispose I have created a proof of concept from your code: ---------------------------- {$mode delphi} program test; type PChunk = ^Chunk; Chunk = Object SubChunks : array of PChunk; data : Pointer; Function NewSubchunk: integer; end; function Chunk.NewSubchunk :integer; var x : integer; begin x := High(SubChunks)+2; setlength(SubChunks, x); New(subchunks[x]); SubChunks[x]^.Data := Self.Data; Result := x; end; var ac : Chunk; begin ac.data := PChar('Hello world'); writeln(ac.NewSubchunk); end. ----------------------- Does it work for you (I do not have any apple to test it on, but it works on my Linux) ? And yes it leaks memory :) Ido LINESIP - Opening the source for communication http://www.linesip.com http://www.linesip.co.il On Wed, Feb 2, 2011 at 17:29, Amit Bueno <amitbu...@gmail.com> wrote: Of course it does -- otherwise it won't have worked on delphi under windows. The X = High(SubChunks); --- Amit On Wed, Feb 2, 2011 at 5:27 PM, ik <ido...@gmail.com> wrote: On Wed, Feb 2, 2011 at 17:18, Amit Bueno <amitbu...@gmail.com> wrote: The SubChunks are -- 'var subchunks array of pchunk;' contained in chunk before allocating the subchunks a setlength(subchunks, High(subchunks)+2) is called. But does the X variable point to existed index in the array ? if not, then it explains the "access violation". --- Amit On Wed, Feb 2, 2011 at 5:15 PM, ik <ido...@gmail.com> wrote: On Wed, Feb 2, 2011 at 16:57, Amit Bueno <amitbu...@gmail.com> wrote: Seems that the ios doesn't allocated properly my objects,. after allocation when trying to run a function from the object it fails. I tried replacing the New(subchunks[X]) to SubChunks[X] := AllocMem(sizeof(Chunk)); Again this works on the windows, it doesn't on the ios. Have you got any ideas? Does "X" actually exists as an index (I mean the value of it) ? --- Amit On Wed, Feb 2, 2011 at 3:34 PM, Amit Bueno <amitbu...@gmail.com> wrote: Attached is the shrinked prof.rar file (481kb). You can download it as well from: http://bueno.co.il/files/prof.rar --- Amit -----Original Message----- From: fpc-pascal-boun...@lists.freepascal.org [mailto:fpc-pascal-boun...@lists.freepascal.org] On Behalf Of Jonas Maebe Sent: Wednesday, February 02, 2011 3:28 PM To: FPC-Pascal users discussions Subject: Re: [fpc-pascal] dynamic array and new/dispose On 02 Feb 2011, at 14:10, Amit Bueno wrote: > Have you got the prof.rar? No. I've just looked at the posts held for moderation and your mail is over 5MB. That is way too large to send to a mailing list. First of all, make sure to only include source code, not compiled units, programs or resources. Secondly, if it's that big, put it online on a website and only send the link to the mailing list. Jonas _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal Ido LINESIP - Opening the source for communication http://www.linesip.com <http://www.linesip.com/> http://www.linesip.co.il <http://www.linesip.co.il/> _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal Ido LINESIP - Opening the source for communication http://www.linesip.com <http://www.linesip.com/> http://www.linesip.co.il <http://www.linesip.co.il/> _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal