]> gitweb.factorcode.org Git - factor.git/commitdiff
vm: fix problem in card marking if first block is free
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 16 Nov 2009 06:52:32 +0000 (00:52 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 16 Nov 2009 06:52:32 +0000 (00:52 -0600)
vm/data_heap.cpp

index 43fbd930f1b5fb6caac4894091da0f738d97d156..c9d9ef085487bdedaa7253a8f9c223c478f7f0ba 100755 (executable)
@@ -166,6 +166,8 @@ the GC. Some types have a binary payload at the end (string, word, DLL) which
 we ignore. */
 cell object::binary_payload_start() const
 {
+       if(free_p()) return 0;
+
        switch(type())
        {
        /* these objects do not refer to other objects at all */