summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ev++.h16
-rw-r--r--ev.c2
2 files changed, 9 insertions, 9 deletions
diff --git a/ev++.h b/ev++.h
index 71a3d52..604340e 100644
--- a/ev++.h
+++ b/ev++.h
@@ -22,10 +22,10 @@ namespace ev {
ev_init (this, 0);
}
- void set_ (void *data, void (*cb)(EV_P_ watcher *w, int revents))
+ void set_ (void *data, void (*cb)(EV_P_ ev_watcher *w, int revents))
{
this->data = data;
- ev_set_cb (static_cast<watcher *>(this), cb);
+ ev_set_cb (static_cast<ev_watcher *>(this), cb);
}
template<class K, void (K::*method)(watcher &w, int)>
@@ -35,10 +35,10 @@ namespace ev {
}
template<class K, void (K::*method)(watcher &w, int)>
- static void method_thunk (EV_P_ watcher *w, int revents)
+ static void method_thunk (EV_P_ ev_watcher *w, int revents)
{
K *obj = static_cast<K *>(w->data);
- (obj->*method) (*w, revents);
+ (obj->*method) (*static_cast<watcher *>(w), revents);
}
template<class K, void (K::*method)(watcher &w, int) const>
@@ -48,10 +48,10 @@ namespace ev {
}
template<class K, void (K::*method)(watcher &w, int) const>
- static void const_method_thunk (EV_P_ watcher *w, int revents)
+ static void const_method_thunk (EV_P_ ev_watcher *w, int revents)
{
K *obj = static_cast<K *>(w->data);
- (obj->*method) (*w, revents);
+ (static_cast<K *>(w->data)->*method) (*static_cast<watcher *>(w), revents);
}
template<void (*function)(watcher &w, int)>
@@ -61,9 +61,9 @@ namespace ev {
}
template<void (*function)(watcher &w, int)>
- static void function_thunk (EV_P_ watcher *w, int revents)
+ static void function_thunk (EV_P_ ev_watcher *w, int revents)
{
- function (*w, revents);
+ function (*static_cast<watcher *>(w), revents);
}
void operator ()(int events = EV_UNDEF)
diff --git a/ev.c b/ev.c
index 3fc528a..654821b 100644
--- a/ev.c
+++ b/ev.c
@@ -1233,7 +1233,7 @@ periodics_reify (EV_P)
/* first reschedule or stop timer */
if (w->reschedule_cb)
{
- ((WT)w)->at = w->reschedule_cb (w, ev_rt_now + 0.0001);
+ ((WT)w)->at = w->reschedule_cb (w, ev_rt_now + 0.0001220703125 /* 1/8192 */);
assert (("ev_periodic reschedule callback returned time in the past", ((WT)w)->at > ev_rt_now));
downheap ((WT *)periodics, periodiccnt, 0);
}