Leopold Toetsch <[EMAIL PROTECTED]> wrote: > Steve Fink <[EMAIL PROTECTED]> wrote:
>> It crashes on a memcpy inside compact_pool > Some remarks what I could find out: > - current COW copying of stacks is AFAIK borken - both "copies" of > one COWed stack share the same Buffer header I have now more signs for that: - First: I have a smaller program, that shows a simimlar corruption bug (a Random PMC turns suddenly into a RetContinuation PMC - while its called Random it shouldn't expose randomness on itself :) - Turning GC off stops that bug - as well as in your program - Using the LEA/system allocator (Configure.pl --gc=libc) makes the bug vanish > the GC/compact_pool in resources.c does correctly deal with such > Buffers. COWed strings have distinct (String)Buffer headers. I'm quite sure now, that the bug is caused by the new COWed register chunks, which share *one* Buffer header. leo