From 0ab0229c1162308509b36cafbf6eaafd7ae054d7 Mon Sep 17 00:00:00 2001 From: eileencodes Date: Fri, 30 Sep 2022 15:37:18 -0400 Subject: Fix frozen object inspect In the rails/rails CI build for Ruby master we found that some tests were failing due to inspect on a frozen object being incorrect. An object's instance variable count was incorrect when frozen causing the object's inspect to not splat out the object. This fixes the issue and adds a test for inspecting frozen objects. Co-Authored-By: Jemma Issroff Co-Authored-By: Aaron Patterson --- shape.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'shape.c') diff --git a/shape.c b/shape.c index ba195c3c96..a6a5adf854 100644 --- a/shape.c +++ b/shape.c @@ -149,13 +149,12 @@ get_next_shape_internal(rb_shape_t* shape, ID id, VALUE obj, enum shape_type sha } break; case SHAPE_IVAR_UNDEF: + case SHAPE_FROZEN: new_shape->iv_count = new_shape->parent->iv_count; break; case SHAPE_ROOT: rb_bug("Unreachable"); break; - case SHAPE_FROZEN: - break; } rb_id_table_insert(shape->edges, id, (VALUE)new_shape); -- cgit v1.2.1