We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 3385c79 commit 71ca582Copy full SHA for 71ca582
src/gc/gc.d
@@ -2630,7 +2630,7 @@ struct Gcx
2630
toClear |= GCBits.BITS_1 << clearIndex;
2631
2632
List *list = cast(List *)p;
2633
- debug(PRINTF) printf("\tcollecting %p\n", list);
+ debug(COLLECT_PRINTF) printf("\tcollecting %p\n", list);
2634
log_free(sentinel_add(list));
2635
2636
debug (MEMSTOMP) memset(p, 0xF3, size);
@@ -2744,11 +2744,15 @@ struct Gcx
2744
{
2745
biti = (offset & notbinsize[bins]) >> pool.shiftBy;
2746
}
2747
- else
+ else if(bins == B_PAGEPLUS)
2748
2749
pn -= pool.bPageOffsets[pn];
2750
biti = pn * (PAGESIZE >> pool.shiftBy);
2751
2752
+ else // bins == B_FREE
2753
+ {
2754
+ return IsMarked.no;
2755
+ }
2756
return pool.mark.test(biti) ? IsMarked.yes : IsMarked.no;
2757
2758
return IsMarked.unknown;
0 commit comments