From e2c3840a943ea84f48f498446c41481d156adc4f Mon Sep 17 00:00:00 2001 From: root Date: Sun, 23 Sep 2012 21:21:58 +0000 Subject: *** empty log message *** --- Changes | 1 + ev.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/Changes b/Changes index 54c1640..e9a05b5 100644 --- a/Changes +++ b/Changes @@ -11,6 +11,7 @@ TODO: document the special problem of signals around fork. TODO: store pid for each signal TODO: document file descriptor usage per loop TODO: store loop pid_t and compare isndie signal handler,store 1 for same, 2 for differign pid, clean up in loop_fork +TODO: embed watchers need updating when fd changes - destroying a non-default loop would stop the global waitpid watcher (Denis Bilenko). - queueing pending watchers of higher priority from a watcher now invokes diff --git a/ev.c b/ev.c index 5885818..45a5e29 100644 --- a/ev.c +++ b/ev.c @@ -2030,6 +2030,7 @@ void ev_feed_signal (int signum) EV_THROW { #if EV_MULTIPLICITY + ECB_MEMORY_FENCE_ACQUIRE; EV_P = signals [signum - 1].loop; if (!EV_A) @@ -3528,6 +3529,7 @@ ev_signal_start (EV_P_ ev_signal *w) EV_THROW !signals [w->signum - 1].loop || signals [w->signum - 1].loop == loop)); signals [w->signum - 1].loop = EV_A; + ECB_MEMORY_FENCE_RELEASE; #endif EV_FREQUENT_CHECK; -- cgit v1.2.3