From 58ac90ff773d7fc5107d7f2a886dd475053115f9 Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 20 Oct 1999 07:10:23 +0000 Subject: marshal load GC protect git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- array.c | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) (limited to 'array.c') diff --git a/array.c b/array.c index 793ea13baf..0615da7551 100644 --- a/array.c +++ b/array.c @@ -930,8 +930,8 @@ rb_ary_sort(ary) VALUE ary; { ary = rb_ary_dup(ary); - if (RARRAY(ary)->len == 0) return ary; - return rb_ary_sort_bang(ary); + rb_ary_sort_bang(ary); + return ary; } VALUE @@ -1365,10 +1365,9 @@ static VALUE rb_ary_uniq(ary) VALUE ary; { - VALUE v = rb_ary_uniq_bang(rb_ary_dup(ary)); - - if (NIL_P(v)) return ary; - return v; + ary = rb_ary_dup(ary); + rb_ary_uniq_bang(ary); + return ary; } static VALUE @@ -1397,10 +1396,9 @@ static VALUE rb_ary_compact(ary) VALUE ary; { - VALUE v = rb_ary_compact_bang(rb_ary_dup(ary)); - - if (NIL_P(v)) return ary; - return v; + ary = rb_ary_dup(ary); + rb_ary_compact_bang(ary); + return ary; } static VALUE @@ -1442,10 +1440,9 @@ static VALUE rb_ary_flatten(ary) VALUE ary; { - VALUE v = rb_ary_flatten_bang(rb_ary_dup(ary)); - - if (NIL_P(v)) return ary; - return v; + ary = rb_ary_dup(ary); + rb_ary_flatten_bang(ary); + return ary; } void -- cgit v1.2.3