# HG changeset patch # User Oleg Oshmyan # Date 1303669720 -3600 # Node ID 90c002c960cb469023c385ce1198b1e2c870c1c4 # Parent d6fd880207cb6d25353fbe1756c11bccb76684ef Fixed CPU time display on UNIX Previously, the total CPU time spent by the testee on all test cases up to and including the current one was displayed. diff -r d6fd880207cb -r 90c002c960cb unix.py --- a/unix.py Sun Apr 24 16:48:29 2011 +0100 +++ b/unix.py Sun Apr 24 19:28:40 2011 +0100 @@ -210,15 +210,16 @@ if (case.maxwalltime and case.time_stopped - case.time_started > case.maxwalltime): raise testcases.WallTimeLimitExceeded - if new_rusage and (case.maxcputime or not case.maxwalltime): - case.time_started = cpustart - case.time_stopped = new_rusage.ru_utime + new_rusage.ru_stime - case.time_limit_string = case.cpu_time_limit_string - if case.maxcputime and new_rusage: - oldtime = old_rusage.ru_utime + old_rusage.ru_stime - newtime = new_rusage.ru_utime + new_rusage.ru_stime - if newtime - oldtime - cpustart > case.maxcputime: - raise testcases.CPUTimeLimitExceeded + if new_rusage: + time_started = old_rusage.ru_utime + old_rusage.ru_stime + cpustart + time_stopped = new_rusage.ru_utime + new_rusage.ru_stime + if case.maxcputime or not case.maxwalltime: + case.time_started = time_started + case.time_stopped = time_stopped + case.time_limit_string = case.cpu_time_limit_string + if (case.maxcputime and + time_stopped - time_started > case.maxcputime): + raise testcases.CPUTimeLimitExceeded if case.maxmemory: if sys.platform != 'darwin': maxrss = case.maxmemory * 1024