diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | array.c | 2 |
2 files changed, 5 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Sat Oct 18 00:47:51 2008 wanabe <s.wanabe@gmail.com> + + * array.c: don't recycle shared-array while sort!. + Fri Oct 17 22:04:38 2008 wanabe <s.wanabe@gmail.com> * array.c: recycle shared-array when it isn't referenced. @@ -177,7 +177,7 @@ rb_ary_decrement_share(VALUE shared) { if (shared) { int num = ARY_SHARED_NUM(shared) - 1; - if (num == 0) { + if (num == 0 && RBASIC(shared)->klass) { rb_ary_free(shared); rb_gc_force_recycle(shared); } |