diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | gc.c | 4 |
2 files changed, 6 insertions, 2 deletions
@@ -1,3 +1,7 @@ +Wed Jul 28 01:04:44 2004 Yukihiro Matsumoto <matz@ruby-lang.org> + + * gc.c (run_final): wrong order of data. [ruby-dev:23948] + Tue Jul 27 07:05:04 2004 Yukihiro Matsumoto <matz@ruby-lang.org> * eval.c (rb_eval): copy on write for argument local variable @@ -1756,8 +1756,8 @@ run_final(obj) if (finalizer_table && st_delete(finalizer_table, (st_data_t*)&obj, &table)) { for (i=0; i<RARRAY(table)->len; i++) { VALUE final = RARRAY(table)->ptr[i]; - args[0] = FIX2INT(RARRAY(final)->ptr[0]); - args[2] = RARRAY(final)->ptr[1]; + args[0] = RARRAY(final)->ptr[1]; + args[2] = FIX2INT(RARRAY(final)->ptr[0]); rb_protect((VALUE(*)_((VALUE)))run_single_final, (VALUE)args, &status); } } |