--- EV/EV.xs 2019/06/25 23:57:23 1.173 +++ EV/EV.xs 2019/07/01 20:48:34 1.174 @@ -204,11 +204,11 @@ SV *sv_self, *sv_events; /* libev might have stopped the watcher */ - if (expect_false (w->e_flags & WFLAG_UNREFED) + if (ecb_expect_false (w->e_flags & WFLAG_UNREFED) && !ev_is_active (w)) REF (w); - if (expect_true (sv_self_cache)) + if (ecb_expect_true (sv_self_cache)) { sv_self = sv_self_cache; sv_self_cache = 0; SvRV_set (sv_self, SvREFCNT_inc_NN (w->self)); @@ -219,7 +219,7 @@ SvREADONLY_on (sv_self); } - if (expect_true (sv_events_cache)) + if (ecb_expect_true (sv_events_cache)) { sv_events = sv_events_cache; sv_events_cache = 0; SvIV_set (sv_events, revents); @@ -239,7 +239,7 @@ PUTBACK; call_sv (w->cb_sv, G_DISCARD | G_VOID | G_EVAL); - if (expect_false (SvREFCNT (sv_self) != 1 || sv_self_cache)) + if (ecb_expect_false (SvREFCNT (sv_self) != 1 || sv_self_cache)) SvREFCNT_dec (sv_self); else { @@ -248,12 +248,12 @@ sv_self_cache = sv_self; } - if (expect_false (SvREFCNT (sv_events) != 1 || sv_events_cache)) + if (ecb_expect_false (SvREFCNT (sv_events) != 1 || sv_events_cache)) SvREFCNT_dec (sv_events); else sv_events_cache = sv_events; - if (expect_false (SvTRUE (ERRSV))) + if (ecb_expect_false (SvTRUE (ERRSV))) { SPAGAIN; PUSHMARK (SP);