On 06 Sep 2009, at 10:16, David Emerson wrote:
My program is crashing, and I just can't figure out why. Heaptrc has
given me this rather cryptic info:
Marked memory at $B79BA208 invalid
Wrong signature $000020D8 instead of 8E1C71B6
It means that you probably have a buffer overrun somewhere.
Using lazurus's step-into functionality, I've it down to the line
where
it's crashing -- seems to be crashing upon completion of a function.
At the end of a function, all local variables are finalised. It's
probably finalising a local dynamic array (possibly the one you
mention below).
Alternately, I can get it to make a similar crash on setlength of a
dynamic array to length 0. (The array has refcount 1.)
I haven't been able to reduce my code to anything reasonable;
whenever I
cut out seemingly irrelevant/unrelated sections, the crashing stops.
Have you tried compiling with range checking on? (-Cr)
Jonas
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal