From d8b8579bc694d0fdf639aa2fe7ddf13cf5fdf0e7 Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 1 Jan 2003 10:49:14 +0000 Subject: * process.c (rb_proc_times): avoid WindowsXP crash using volatile variables. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@3274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- process.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/process.c b/process.c index 38592794c..41a00154e 100644 --- a/process.c +++ b/process.c @@ -1261,13 +1261,17 @@ rb_proc_times(obj) # endif #endif /* HZ */ struct tms buf; + VALUE volatile utime = rb_float_new((double)buf.tms_utime / HZ); + VALUE volatile stime = rb_float_new((double)buf.tms_stime / HZ); + VALUE volatile cutime = rb_float_new((double)buf.tms_cutime / HZ); + VALUE volatile sctime = rb_float_new((double)buf.tms_cstime / HZ); times(&buf); return rb_struct_new(S_Tms, - rb_float_new((double)buf.tms_utime / HZ), - rb_float_new((double)buf.tms_stime / HZ), - rb_float_new((double)buf.tms_cutime / HZ), - rb_float_new((double)buf.tms_cstime / HZ)); + utime, + stime, + cutime, + sctime); #else rb_notimplement(); #endif -- cgit