summaryrefslogtreecommitdiff
path: root/ev.c
diff options
context:
space:
mode:
authorroot <root>2010-10-24 19:15:52 +0000
committerroot <root>2010-10-24 19:15:52 +0000
commit8a1a04e426d7c5d6cf85f306dac741efee055607 (patch)
treec5da01189103296d3a0d65cb6cc0816f425773ef /ev.c
parent85f13ac497130415b7dc7f9555d0980a6b911a12 (diff)
*** empty log message ***
Diffstat (limited to 'ev.c')
-rw-r--r--ev.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/ev.c b/ev.c
index 774dd69..066cd88 100644
--- a/ev.c
+++ b/ev.c
@@ -3594,6 +3594,8 @@ ev_cleanup_start (EV_P_ ev_cleanup *w)
array_needsize (ev_cleanup *, cleanups, cleanupmax, cleanupcnt, EMPTY2);
cleanups [cleanupcnt - 1] = w;
+ /* cleanup watchers should never keep a refcount on the loop */
+ ev_unref (EV_A);
EV_FREQUENT_CHECK;
}
@@ -3605,6 +3607,7 @@ ev_cleanup_stop (EV_P_ ev_cleanup *w)
return;
EV_FREQUENT_CHECK;
+ ev_ref (EV_A);
{
int active = ev_active (w);