summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--eval.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 6d57f74373..0a0e0e1035 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Thu Mar 20 10:45:29 2003 Tanaka Akira <akr@m17n.org>
+
+ * eval.c (bmcall): add volatile to avoid GC problem.
+
Wed Mar 19 23:05:30 2003 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/tracer.rb (trace_func): save and recover Thread.critical state.
diff --git a/eval.c b/eval.c
index 1f408a0559..0e9c149757 100644
--- a/eval.c
+++ b/eval.c
@@ -7250,8 +7250,8 @@ static VALUE
bmcall(args, method)
VALUE args, method;
{
- args = svalue_to_avalue(args);
- return method_call(RARRAY(args)->len, RARRAY(args)->ptr, method);
+ volatile args2 = svalue_to_avalue(args);
+ return method_call(RARRAY(args2)->len, RARRAY(args2)->ptr, method);
}
static VALUE