OpenCoverage

clock.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/bash/src/lib/sh/clock.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/* clock.c - operations on struct tms and clock_t's */-
2-
3/* Copyright (C) 1999 Free Software Foundation, Inc.-
4-
5 This file is part of GNU Bash, the Bourne Again SHell.-
6-
7 Bash is free software: you can redistribute it and/or modify-
8 it under the terms of the GNU General Public License as published by-
9 the Free Software Foundation, either version 3 of the License, or-
10 (at your option) any later version.-
11-
12 Bash is distributed in the hope that it will be useful,-
13 but WITHOUT ANY WARRANTY; without even the implied warranty of-
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the-
15 GNU General Public License for more details.-
16-
17 You should have received a copy of the GNU General Public License-
18 along with Bash. If not, see <http://www.gnu.org/licenses/>.-
19*/-
20-
21#include <config.h>-
22-
23#if defined (HAVE_TIMES)-
24-
25#include <sys/types.h>-
26#include <posixtime.h>-
27-
28#if defined (HAVE_SYS_TIMES_H)-
29# include <sys/times.h>-
30#endif-
31-
32#include <stdio.h>-
33#include <stdc.h>-
34-
35extern long get_clk_tck __P((void));-
36-
37void-
38clock_t_to_secs (t, sp, sfp)-
39 clock_t t;-
40 time_t *sp;-
41 int *sfp;-
42{-
43 static long clk_tck = -1;-
44-
45 if (clk_tck == -1)
clk_tck == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
46 clk_tck = get_clk_tck ();
never executed: clk_tck = get_clk_tck ();
0
47-
48 *sfp = t % clk_tck;-
49 *sfp = (*sfp * 1000) / clk_tck;-
50-
51 *sp = t / clk_tck;-
52-
53 /* Sanity check */-
54 if (*sfp >= 1000)
*sfp >= 1000Description
TRUEnever evaluated
FALSEnever evaluated
0
55 {-
56 *sp += 1;-
57 *sfp -= 1000;-
58 }
never executed: end of block
0
59}
never executed: end of block
0
60-
61/* Print the time defined by a clock_t (returned by the `times' and `time'-
62 system calls) in a standard way to stdio stream FP. This is scaled in-
63 terms of the value of CLK_TCK, which is what is returned by the-
64 `times' call. */-
65void-
66print_clock_t (fp, t)-
67 FILE *fp;-
68 clock_t t;-
69{-
70 time_t timestamp;-
71 long minutes;-
72 int seconds, seconds_fraction;-
73-
74 clock_t_to_secs (t, &timestamp, &seconds_fraction);-
75-
76 minutes = timestamp / 60;-
77 seconds = timestamp % 60;-
78-
79 fprintf (fp, "%ldm%d.%03ds", minutes, seconds, seconds_fraction);-
80}
never executed: end of block
0
81#endif /* HAVE_TIMES */-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.1.2