Branch Coverage

lib/Linux/FD.xs
Criterion Covered Total %
branch 49 94 52.1


line true false branch
44 0 1 if (SvROK(clock)) {
46 0 0 if (!SvROK(clock) || !(value = SvRV(clock)))
52 2 0 for (i = 0; i < sizeof clocks / sizeof *clocks; ++i) {
53 1 1 if (strEQ(clock_name, clocks[i].key))
65 6 0 IO* io = GvIOn(gv);
6 0 IO* io = GvIOn(gv);
6 0 IO* io = GvIOn(gv);
6 0 IO* io = GvIOn(gv);
81 6 0 for (i = 0; i < map_size / sizeof *flags; ++i)
82 5 1 if (strEQ(SvPV_nolen(flag_name), flags[i].key))
96 0 2 if (fd < 0)
109 0 3 if (fd < 0)
123 0 1 if (fd < 0)
130 5 8 if (value == -1 && errno == EINTR) {
0 5 if (value == -1 && errno == EINTR) {
131 0 0 PERL_ASYNC_CHECK();
154 3 2 for (i = 1; i < items; i++)
164 1 3 for (i = 1; i < items; i++)
174 1 1 for (i = 1; i < items; i++)
186 0 0 for (i = 2; i < items; i++)
199 0 6 } while (interrupted(ret));
200 3 3 if (ret == -1) {
201 3 0 if (errno == EAGAIN)
206 0 3 RETVAL = buffer;
218 0 2 } while (interrupted(ret));
219 0 2 if (ret == -1) {
220 0 0 if (errno == EAGAIN)
236 0 0 for (i = 2; i < items; i++)
244 0 0 if(signalfd(fd, sigmask, 0) == -1)
253 0 2 } while (interrupted(tmp));
254 1 1 if (tmp == -1) {
255 1 0 if (errno == EAGAIN)
270 0 0 for (i = 2; i < items; i++)
280 0 1 if (timerfd_gettime(timerfd, &value) == -1)
282 0 1 mXPUSHn(timespec_to_nv(&value.it_value));
283 1 0 if (GIMME_V == G_ARRAY)
284 0 1 mXPUSHn(timespec_to_nv(&value.it_interval));
292 0 2 if (timerfd_settime(timerfd, (abstime ? TIMER_ABSTIME : 0), &new_itimer, &old_itimer) == -1)
294 0 2 mXPUSHn(timespec_to_nv(&old_itimer.it_value));
295 0 2 if (GIMME_V == G_ARRAY)
296 0 0 mXPUSHn(timespec_to_nv(&old_itimer.it_interval));
305 0 3 } while (interrupted(ret));
306 1 2 if (ret == -1) {
307 1 0 if (errno == EAGAIN)
312 0 2 RETVAL = buffer;
320 5 1 for (i = 0; i < sizeof clocks / sizeof *clocks; ++i)
321 0 5 mXPUSHp(clocks[i].key, clocks[i].length);