diff --git a/ChangeLog b/ChangeLog index be491896bf..3db38f95d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sat Jan 19 20:41:29 2008 Tanaka Akira + + * encoding.c (enc_new): don't free rb_encoding to avoid SEGV by + `miniruby -e exit' on x86_64 GNU/Linux. + Sat Jan 19 18:40:19 2008 Tadayoshi Funaba * lib/date.rb (once): use an instance variable which points a hash @@ -2679,7 +2684,7 @@ Sun Dec 23 10:23:23 2007 Martin Duerst Sun Dec 23 09:07:02 2007 Tanaka Akira * include/ruby/encoding.h, encoding.c, re.c, io.c, parse.y, numeric.c, - ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding. to + ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding to rb_ascii8bit_encoding. rb_ascii_encoding is ambiguous with ASCII-8BIT and US-ASCII. diff --git a/encoding.c b/encoding.c index 6a7d906c30..328f2d4742 100644 --- a/encoding.c +++ b/encoding.c @@ -73,7 +73,7 @@ enc_mark(void *ptr) static VALUE enc_new(rb_encoding *encoding) { - VALUE enc = Data_Wrap_Struct(rb_cEncoding, enc_mark, -1, encoding); + VALUE enc = Data_Wrap_Struct(rb_cEncoding, enc_mark, 0, encoding); encoding->auxiliary_data = (void *)enc; return enc; }