At 12:46 10/06/2003 -0700, you wrote:
I just looked at this again.  If you are really getting RTE 201 then
it (probably) has nothing to do with the GetMem's.  It means you are
over-indexing your arrays or seomthing similar.  Good luck.

-Alan


That's what surprise me, so rechecked and yes, the rte is 201. I get the error when i don't check them for nil. If i chek the nil, the program never enters in the code. I use them to navigate throught lists structures defined as global. As said, if i define them as global too i get.... the GetMem works!!!... and the rte 201 apears again. Perhaps i use them badly, but the main problem for me was the not allocation of memory for them.


Also i use fpc 1.08


Thanks
--- Alan Mead <[EMAIL PROTECTED]> wrote:
> Eduardo,
>
> I did not follow your example, but are you aware of the "growing
> heap" behavior of FreePascal and the ReturnNilGrowHeapFails
> variable?
>
>
http://www.freepascal.org/docs-html/prog/progsu113.html#x163-1680008.4
>
> Also, I think this ReturnNilGrowHeapFails behavior is broken in
> 1.0.6
> and fixed in 1.0.7 (which, I think, is not available yet).
>
> But I don't know why you get RTE 201?  (You should be getting 203
> or
> 216 or something)
>
> -Alan
>
>
> --- Eduardo Morras <[EMAIL PROTECTED]> wrote:
> > Hello:
> >          I've got a weird problem with getmem. I have check
> > everything (i
> > think) but i can't get it work. Heaptrc says it's all ok, but
> when
> > i
> > de-comment the next three lines ( the freemem also ),  all fails
> >
> >       GetMem(sDicc,sizeof(rtBusqBidimen));
> >       GetMem(ppmv,sizeof(rtMotionVector));
> >       GetMem(nDicc,sizeof(rtBusqBidimen));
> >
> >       if (sDicc<>nil) AND (nDicc<>nil) AND (ppmv<>nil) then
> >          writeln('MAS MEMORIA PARA VECTORMOTION') // Chequeo de
> > memoria
> > INICIAL
> >         {More Memory for VECTORMOTION //NITIAL memory check}
> >       else begin
> > ......
> >
> > The sizes are 14,8,14, MemAvail says near 48Mb and MaxAvail 47'5.
> I
> >
> > tried  to put them in the program vars (they are in a function),
> > change the
> > sizeof (which print on screen 14,8,14) to it's values re-type for
> a
> >
> > misspelling error. Their declartions at var are
> >
> > nDicc,sDicc       : prtBusqBidimen;  // p= point r= record t=
> type
> > BusqDimen
> > ppmv                 : prtMotionVector;  // id. MotionVector
> >
> > When skip the if (sDicc<>nil)... a runtime error 201 appears
> >
> > what's the next step??
> >
> > Any clues??

-----------------------------------------------------------------------------------------------------------------------------
La diferencia entre la teoria y la practica es que en teoria no hay, pero en la practica si



_______________________________________________ fpc-pascal maillist - [EMAIL PROTECTED] http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to