From 65ad154e2ab959c7b57e566866500b874e6d253a Mon Sep 17 00:00:00 2001 From: ko1 Date: Wed, 19 Jun 2013 21:21:16 +0000 Subject: [PATCH] * gc.c (gc_profile_total_time): check objspace->profile.next_index > 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ gc.c | 7 ++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index eae2565bbe..23c1b711b4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Thu Jun 20 06:18:01 2013 Koichi Sasada + + * gc.c (gc_profile_total_time): check objspace->profile.next_index > 0. + Thu Jun 20 05:47:41 2013 Koichi Sasada * gc.c (gc_prof_sweep_timer_start): fix merge miss. diff --git a/gc.c b/gc.c index 7eb6114867..5568015f0a 100644 --- a/gc.c +++ b/gc.c @@ -5348,10 +5348,11 @@ gc_profile_total_time(VALUE self) { double time = 0; rb_objspace_t *objspace = &rb_objspace; - size_t i; - size_t count = objspace->profile.next_index - 1; - if (objspace->profile.run && count > 0) { + if (objspace->profile.run && objspace->profile.next_index > 0) { + size_t i; + size_t count = objspace->profile.next_index - 1; + for (i = 0; i < count; i++) { time += objspace->profile.record[i].gc_time; }