summaryrefslogtreecommitdiffstats
path: root/hash.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-02-05 16:51:30 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-02-05 16:51:30 +0000
commit5dcdc27f22c898d81c0f3ab915c5772c75afee42 (patch)
treead5dc47db413df1657781df662687fdd89c330aa /hash.c
parent07c02e042b926961b443f6c52d2b1ed1459f4440 (diff)
downloadruby-5dcdc27f22c898d81c0f3ab915c5772c75afee42.tar.gz
ruby-5dcdc27f22c898d81c0f3ab915c5772c75afee42.tar.xz
ruby-5dcdc27f22c898d81c0f3ab915c5772c75afee42.zip
* hash.c (rb_hash_flatten): do not flatten recursively by default.
[ruby-dev:33603] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'hash.c')
-rw-r--r--hash.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/hash.c b/hash.c
index 0328d9d1a..c3b07442f 100644
--- a/hash.c
+++ b/hash.c
@@ -1673,6 +1673,11 @@ rb_hash_flatten(int argc, VALUE *argv, VALUE hash)
VALUE ary;
ary = rb_hash_to_a(hash);
+ if (argc == 0) {
+ argc = 1;
+ tmp = INT2FIX(1);
+ argv = &tmp;
+ }
rb_funcall2(ary, rb_intern("flatten!"), argc, argv);
return ary;
}