summaryrefslogtreecommitdiff
path: root/rts/posix
diff options
context:
space:
mode:
authorSimon Marlow <simonmar@microsoft.com>2007-08-24 09:55:32 +0000
committerSimon Marlow <simonmar@microsoft.com>2007-08-24 09:55:32 +0000
commit0d88de0b114a391712bc117d42928b49fba4d66a (patch)
treed6f6643495337912624d33eedf5a483f1654fbb9 /rts/posix
parent229fa59a85aa087900a07cdcc7200164db84f79b (diff)
downloadhaskell-0d88de0b114a391712bc117d42928b49fba4d66a.tar.gz
fix +RTS -V0 when not using -threaded
Diffstat (limited to 'rts/posix')
-rw-r--r--rts/posix/Itimer.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/rts/posix/Itimer.c b/rts/posix/Itimer.c
index c4944aa8a0..df95f21b92 100644
--- a/rts/posix/Itimer.c
+++ b/rts/posix/Itimer.c
@@ -233,8 +233,11 @@ lnat
getourtimeofday(void)
{
struct timeval tv;
+ nat interval;
+ interval = RtsFlags.MiscFlags.tickInterval;
+ if (interval == 0) { interval = 50; }
gettimeofday(&tv, (struct timezone *) NULL);
// cast to lnat because nat may be 64 bit when int is only 32 bit
- return ((lnat)tv.tv_sec * 1000 / RtsFlags.MiscFlags.tickInterval +
- (lnat)tv.tv_usec / (RtsFlags.MiscFlags.tickInterval * 1000));
+ return ((lnat)tv.tv_sec * 1000 / interval +
+ (lnat)tv.tv_usec / (interval * 1000));
}