Unpoision the object in rb_gc_impl_garbage_object_p

This commit is contained in:
Peter Zhu 2024-09-03 13:43:33 -04:00
parent 675529b9c6
commit 53eaa67305

View File

@ -1653,13 +1653,15 @@ rb_gc_impl_garbage_object_p(void *objspace_ptr, VALUE ptr)
{ {
rb_objspace_t *objspace = objspace_ptr; rb_objspace_t *objspace = objspace_ptr;
switch (BUILTIN_TYPE(ptr)) { asan_unpoisoning_object(ptr) {
case T_NONE: switch (BUILTIN_TYPE(ptr)) {
case T_MOVED: case T_NONE:
case T_ZOMBIE: case T_MOVED:
return true; case T_ZOMBIE:
default: return true;
break; default:
break;
}
} }
return is_lazy_sweeping(objspace) && GET_HEAP_PAGE(ptr)->flags.before_sweep && return is_lazy_sweeping(objspace) && GET_HEAP_PAGE(ptr)->flags.before_sweep &&