diff options
author | Maple Ong <maple.ong@gusto.com> | 2023-04-12 12:22:22 -0400 |
---|---|---|
committer | Maple Ong <maple.ong@gusto.com> | 2023-04-12 12:22:22 -0400 |
commit | 3be0110e845da7f861799703eb222e8a2964d95f (patch) | |
tree | 694b89eea46bcb14998cc9cf613899385ed83de3 /Lib/ruby | |
parent | 33f6a2d0b2c3d90b928f56ddfa599afe87903f76 (diff) | |
download | swig-3be0110e845da7f861799703eb222e8a2964d95f.tar.gz |
Fix "undefining the allocator of T_DATA" error seen in Ruby 3.2
Ruby 3.2 issue: https://bugs.ruby-lang.org/issues/18007
Similar to https://github.com/robinst/swig/commit/9b5d37fd174331fa2b7113fe968fcf0570de43bf
Diffstat (limited to 'Lib/ruby')
-rw-r--r-- | Lib/ruby/rubyrun.swg | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Lib/ruby/rubyrun.swg b/Lib/ruby/rubyrun.swg index 6cac4626a..322470891 100644 --- a/Lib/ruby/rubyrun.swg +++ b/Lib/ruby/rubyrun.swg @@ -157,7 +157,8 @@ SWIG_Ruby_define_class(swig_type_info *type) _cSWIG_Pointer = rb_define_class_under(_mSWIG, "Pointer", rb_cObject); rb_undef_method(CLASS_OF(_cSWIG_Pointer), "new"); } - rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer); + VALUE cl = rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer); + rb_undef_alloc_func(cl); free((void *) klass_name); } |