summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorJean Boussier <byroot@ruby-lang.org>2022-12-14 15:19:56 +0100
committerJean Boussier <jean.boussier@gmail.com>2022-12-14 15:53:41 +0100
commit1df6d0e57828de9606613db940e32aa5b15eff18 (patch)
tree075046458027cc5cf6e84570711237e930b252c3 /ext
parentcca54c8b1b71072bb07850c9d3f20b261d3b312c (diff)
objspace_dump.c: don't dump class of T_IMEMO
They don't actually have a class.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6925
Diffstat (limited to 'ext')
-rw-r--r--ext/objspace/objspace_dump.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/objspace/objspace_dump.c b/ext/objspace/objspace_dump.c
index 2b4fd5fa1d..a4858d44b9 100644
--- a/ext/objspace/objspace_dump.c
+++ b/ext/objspace/objspace_dump.c
@@ -383,7 +383,11 @@ dump_object(VALUE obj, struct dump_config *dc)
dc->cur_obj = obj;
dc->cur_obj_references = 0;
- dc->cur_obj_klass = BUILTIN_TYPE(obj) == T_NODE ? 0 : RBASIC_CLASS(obj);
+ if (BUILTIN_TYPE(obj) == T_NODE || BUILTIN_TYPE(obj) == T_IMEMO) {
+ dc->cur_obj_klass = 0;
+ } else {
+ dc->cur_obj_klass = RBASIC_CLASS(obj);
+ }
if (dc->partial_dump && (!ainfo || ainfo->generation < dc->since)) {
return;