Branch Coverage

c/ev.c
Criterion Covered Total %
branch 86 206 41.7


line true false branch
34 111892 0 if (EvPERLCB(ev))
37 923 110969 PE_RING_DETACH(&ev->peer);
38 0 111892 PE_RING_DETACH(&ev->que);
40 636 111256 if (WaCANDESTROY(wa)) /* running */
636 0 if (WaCANDESTROY(wa)) /* running */
636 0 if (WaCANDESTROY(wa)) /* running */
45 0 0 if (EvPERLCB(ev))
54 1 2 if (EvPERLCB(ev))
66 31 54 if (PE_RING_EMPTY(&event_vtbl.freelist)) {
72 54 0 PE_RING_DETACH(lk);
85 923 110969 if (!ev->mysv)
94 0 0 if (!nval) {
96 0 0 XPUSHs(sv_2mortal(newSViv(ev->hits)));
103 0 0 if (!nval) {
105 0 0 XPUSHs(sv_2mortal(newSViv(ev->prio)));
116 1223 110581 if (PE_RING_EMPTY(&ioevent_vtbl.freelist)) {
122 110581 0 PE_RING_DETACH(lk);
137 0 0 if (!nval) {
139 0 0 XPUSHs(sv_2mortal(events_mask_2sv(io->got)));
150 3 0 if (PE_RING_EMPTY(&datafulevent_vtbl.freelist)) {
156 0 0 PE_RING_DETACH(lk);
173 0 0 if (!nval) {
175 0 0 XPUSHs(de->data);
187 110297 672 if (WaACTIVE(wa) && WaINVOKE1(wa) && WaREPEAT(wa))
51 110246 if (WaACTIVE(wa) && WaINVOKE1(wa) && WaREPEAT(wa))
48 3 if (WaACTIVE(wa) && WaINVOKE1(wa) && WaREPEAT(wa))
189 0 110969 if (Estat.on) {
190 0 0 if (fp->stats) {
194 0 0 if (CurCBFrame >= 0) {
196 0 0 if (!pfp->stats)
211 7 0 SV *err = (sv_true(ERRSV)?
212 7 0 sv_mortalcopy(ERRSV):
7 0 sv_mortalcopy(ERRSV):
217 0 7 PUSHMARK(SP);
218 0 7 XPUSHs(event_2sv(fp->ev));
219 0 7 XPUSHs(err);
222 7 0 if (sv_true(ERRSV)) {
1 6 if (sv_true(ERRSV)) {
223 1 0 warn("Event: '%s' died and then $Event::DIED died with: %s\n",
1 0 warn("Event: '%s' died and then $Event::DIED died with: %s\n",
224 1 0 SvPV(wa->desc,n_a), SvPV(ERRSV,n_a));
1 0 SvPV(wa->desc,n_a), SvPV(ERRSV,n_a));
1 0 SvPV(wa->desc,n_a), SvPV(ERRSV,n_a));
0 0 SvPV(wa->desc,n_a), SvPV(ERRSV,n_a));
225 1 0 sv_setpv(ERRSV, "");
238 110875 241 if (CurCBFrame < 0)
242 252 5 while (CurCBFrame >= 0) {
244 236 16 if (fp->ev->up->running == fp->run_id)
246 6 10 if (!alert) {
266 110969 0 PE_RING_DETACH(&ev->peer);
270 0 110969 if (Estat.on)
276 1 110968 if (CurCBFrame+1 >= MAX_CB_NEST) {
282 0 110968 if (Dbg) {
291 0 0 if (Dbg >= 2)
292 0 0 warn("Event: [%d]invoking '%s' (prio %d)\n",
296 1 110967 if (!PE_RING_EMPTY(&Callback)) pe_map_check(&Callback);
298 110968 0 if (EvPERLCB(ev)) {
300 1 110967 int pcflags = G_VOID | (SvIVX(Eval)? G_EVAL : 0);
304 0 110968 PUSHMARK(SP);
305 110962 6 if (SvTYPE(cb) == SVt_PVCV) {
306 0 110962 XPUSHs(evsv);
312 0 6 XPUSHs(*av_fetch(av, 0, 0));
313 0 6 XPUSHs(evsv);
315 6 0 retcnt = perl_call_method(SvPV(*av_fetch(av, 1, 0),n_a), pcflags);
320 110953 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
0 110953 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
0 110953 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
110953 0 if (SvTRUE(ERRSV)) {
110952 1 if (SvTRUE(ERRSV)) {
110952 0 if (SvTRUE(ERRSV)) {
0 110952 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
0 0 if (SvTRUE(ERRSV)) {
1 110952 if (SvTRUE(ERRSV)) {
321 1 0 if (pcflags & G_EVAL)
324 0 0 sv_setsv(ERRSV, &PL_sv_no);
333 0 110953 if (Estat.on) {
334 0 0 if (frp->stats) /* maybe in transition */
338 0 110953 if (Dbg >= 3)
339 0 0 warn("Event: completed '%s'\n", SvPV(wa->desc, n_a));