summaryrefslogtreecommitdiff
path: root/dir.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-09-18 06:33:03 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-09-18 06:33:03 +0000
commit6bf30a90ef7b7795b6259a523816c1f28267722d (patch)
tree039a36cde0c3f5c74525a2539f56798e7b2a5bb6 /dir.c
parent3851ac03b597c9ab90783cdc60937c95d8792f0e (diff)
* dir.c (dir_s_glob): restore GC protection volatile variable.
[ruby-dev:29588] * re.c (rb_reg_regcomp): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'dir.c')
-rw-r--r--dir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/dir.c b/dir.c
index 13f1a51c7f..be594b439b 100644
--- a/dir.c
+++ b/dir.c
@@ -1629,7 +1629,8 @@ dir_s_glob(int argc, VALUE *argv, VALUE obj)
ary = rb_push_glob(str, flags);
}
else {
- ary = dir_globs(RARRAY_LEN(ary), RARRAY_PTR(ary), flags);
+ volatile VALUE v = ary;
+ ary = dir_globs(RARRAY_LEN(v), RARRAY_PTR(v), flags);
}
if (rb_block_given_p()) {