OpenCoverage

nanosleep.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/coreutils/src/gnulib/lib/nanosleep.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9enum { BILLION = 1000 * 1000 * 1000 };-
10-
11-
12-
13int-
14-
15rpl_nanosleep -
16 (const struct timespec *requested_delay,-
17 struct timespec *remaining_delay)-
18-
19{-
20-
21-
22-
23-
24-
25-
26 if (requested_delay->tv_nsec < 0
requested_delay->tv_nsec < 0Description
TRUEnever evaluated
FALSEevaluated 459 times by 2 tests
Evaluated by:
  • sleep
  • tail
|| BILLION <= requested_delay->tv_nsec
BILLION <= req...delay->tv_nsecDescription
TRUEnever evaluated
FALSEevaluated 459 times by 2 tests
Evaluated by:
  • sleep
  • tail
)
0-459
27 {-
28 -
29 (*__errno_location ()) -
30 = -
31 22-
32 ;-
33 return
never executed: return -1;
-1;
never executed: return -1;
0
34 }-
35-
36 {-
37-
38 _Static_assert (((time_t) (! (! ((time_t) 0 < (time_t) -1)) ? (time_t) -1 : ((((time_t) 1 << ((sizeof (time_t) * 8) - 2)) - 1) * 2 + 1))) / 24 / 24 / 60 / 60, "verify (" "TYPE_MAXIMUM (time_t) / 24 / 24 / 60 / 60" ")");-
39 const time_t limit = 24 * 24 * 60 * 60;-
40 time_t seconds = requested_delay->tv_sec;-
41 struct timespec intermediate;-
42 intermediate.tv_nsec = requested_delay->tv_nsec;-
43-
44 while (limit < seconds
limit < secondsDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sleep
FALSEevaluated 457 times by 2 tests
Evaluated by:
  • sleep
  • tail
)
2-457
45 {-
46 int result;-
47 intermediate.tv_sec = limit;-
48 result = nanosleep (&intermediate, remaining_delay);-
49 seconds -= limit;-
50 if (result
resultDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
51 {-
52 if (remaining_delay
remaining_delayDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
53 remaining_delay->tv_sec += seconds;
never executed: remaining_delay->tv_sec += seconds;
0
54 return
never executed: return result;
result;
never executed: return result;
0
55 }-
56 intermediate.tv_nsec = 0;-
57 }
never executed: end of block
0
58 intermediate.tv_sec = seconds;-
59 return
executed 457 times by 2 tests: return nanosleep (&intermediate, remaining_delay);
Executed by:
  • sleep
  • tail
nanosleep (&intermediate, remaining_delay);
executed 457 times by 2 tests: return nanosleep (&intermediate, remaining_delay);
Executed by:
  • sleep
  • tail
457
60 }-
61}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.1.2