summaryrefslogtreecommitdiff
path: root/struct.c
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2021-07-15 21:30:15 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2021-07-15 21:32:04 +0900
commit33bea3bdff3b91b3373a85a5c077361073b127d8 (patch)
tree9cd89b6543831e8e597b88d71ef8cb13c90a894c /struct.c
parent835c63cd8818dfa86bce54d818c11cbec25b1285 (diff)
downloadruby-33bea3bdff3b91b3373a85a5c077361073b127d8.tar.gz
Regularize keyword_init values not to hold the argument object
Diffstat (limited to 'struct.c')
-rw-r--r--struct.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/struct.c b/struct.c
index 09cce01c2c..1284fd4aa2 100644
--- a/struct.c
+++ b/struct.c
@@ -604,6 +604,9 @@ rb_struct_s_def(int argc, VALUE *argv, VALUE klass)
if (keyword_init == Qundef) {
keyword_init = Qnil;
}
+ else if (RTEST(keyword_init)) {
+ keyword_init = Qtrue;
+ }
--argc;
}