summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-08-23 17:06:55 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-08-23 17:06:55 +0000
commit9942c6ed13910504726ac688a205313b44ed3895 (patch)
treef33268bec64b1e9cc8b89206923dc950193d0457 /eval.c
parent8211f8f8afe664a96b8c1473037463293a48a75e (diff)
* file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for
apparent cases. [ruby-talk:79748] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/eval.c b/eval.c
index 7f586a1e43..38edb34856 100644
--- a/eval.c
+++ b/eval.c
@@ -4256,16 +4256,13 @@ VALUE
rb_yield_splat(values)
VALUE values;
{
- VALUE tmp;
int avalue = Qfalse;
- tmp = rb_check_array_type(values);
- if (!NIL_P(tmp)) {
- if (RARRAY(tmp)->len == 0) {
+ if (TYPE(values) == T_ARRAY) {
+ if (RARRAY(values)->len == 0) {
values = Qundef;
}
else {
- values = tmp;
avalue = Qtrue;
}
}