line |
true |
false |
branch |
37
|
0 |
6 |
if (!sv) |
39
|
0 |
6 |
if (SvGMAGICAL(sv)) |
41
|
1 |
5 |
if (SvIOK(sv)) /* maybe non-portable but nice for unixen */ |
42
|
1 |
0 |
return SvIV(sv); |
43
|
5 |
0 |
if (SvROK(sv)) |
45
|
5 |
0 |
if (SvTYPE(sv) == SVt_PVGV) { |
46
|
5 |
0 |
if (!(io=GvIO((GV*)sv)) || !(fp = IoIFP(io))) { |
|
0 |
5 |
if (!(io=GvIO((GV*)sv)) || !(fp = IoIFP(io))) { |
|
0 |
0 |
if (!(io=GvIO((GV*)sv)) || !(fp = IoIFP(io))) { |
|
5 |
0 |
if (!(io=GvIO((GV*)sv)) || !(fp = IoIFP(io))) { |
|
5 |
0 |
if (!(io=GvIO((GV*)sv)) || !(fp = IoIFP(io))) { |
|
0 |
5 |
if (!(io=GvIO((GV*)sv)) || !(fp = IoIFP(io))) { |
59
|
0 |
94226 |
if (!got) { |
246
|
0 |
1 |
if (ret < 0 && errno != EAGAIN && errno != EINTR) |
|
0 |
0 |
if (ret < 0 && errno != EAGAIN && errno != EINTR) |
|
0 |
0 |
if (ret < 0 && errno != EAGAIN && errno != EINTR) |
249
|
0 |
1 |
if (left > IntervalEpsilon) { |
250
|
0 |
0 |
if (ret==0) ++TimeoutTooEarly; |
264
|
3 |
59061 |
if (pollMax < IOWatchCount) { |
265
|
0 |
3 |
if (Pollfd) |
268
|
0 |
3 |
EvNew(9, Pollfd, pollMax, struct pollfd); |
271
|
17 |
59047 |
if (!IOWatch_OK) { |
273
|
4 |
13 |
if (Pollfd) |
274
|
0 |
4 |
Zero(Pollfd, pollMax, struct pollfd); |
276
|
7 |
17 |
while (ev) { |
281
|
4 |
3 |
if (ev->poll & PE_R) bits |= (POLLIN | POLLPRI); |
282
|
3 |
4 |
if (ev->poll & PE_W) bits |= POLLOUT; |
283
|
0 |
7 |
if (ev->poll & PE_E) bits |= (POLLRDBAND | POLLPRI); |
286
|
4 |
7 |
for (xx = 0; xx < Nfds; xx++) { |
287
|
0 |
4 |
if (Pollfd[xx].fd == fd) { ok=1; break; } |
289
|
7 |
0 |
if (!ok) xx = Nfds++; |
299
|
94228 |
59064 |
for (xx=0; xx < Nfds; xx++) |
301
|
15 |
59049 |
if (timeout < 0) |
305
|
0 |
59064 |
if (ret < 0) { |
306
|
0 |
0 |
if (errno == EINTR || errno == EAGAIN) |
|
0 |
0 |
if (errno == EINTR || errno == EAGAIN) |
308
|
0 |
0 |
if (errno == EINVAL) { |
316
|
94228 |
59064 |
while (ev) { |
320
|
94228 |
0 |
if (xref >= 0) { |
323
|
47060 |
47168 |
if (mask & (POLLIN | POLLPRI | POLLHUP | POLLERR)) got |= PE_R; |
324
|
47166 |
47062 |
if (mask & (POLLOUT | POLLERR)) got |= PE_W; |
325
|
1 |
94227 |
if (mask & (POLLRDBAND | POLLPRI | POLLHUP | POLLERR)) got |= PE_E; |
326
|
1 |
94227 |
if (mask & POLLNVAL) { |
327
|
1 |
0 |
warn("Event: '%s' was unexpectedly closed", |
331
|
1 |
94226 |
if ((mask & POLLHUP) && (ev->poll & PE_W) && (!(got & PE_W)) |
|
0 |
1 |
if ((mask & POLLHUP) && (ev->poll & PE_W) && (!(got & PE_W)) |
|
0 |
0 |
if ((mask & POLLHUP) && (ev->poll & PE_W) && (!(got & PE_W)) |
332
|
0 |
0 |
&& (!(ev->poll & PE_R)) && (!(ev->poll & PE_E))) { |
|
0 |
0 |
&& (!(ev->poll & PE_R)) && (!(ev->poll & PE_E))) { |
337
|
94226 |
1 |
if (got) _queue_io(ev, got); |