ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev.c
(Generate patch)

Comparing libev/ev.c (file contents):
Revision 1.293 by root, Mon Jun 29 18:46:52 2009 UTC vs.
Revision 1.294 by root, Wed Jul 8 02:46:05 2009 UTC

1358ev_loop_count (EV_P) 1358ev_loop_count (EV_P)
1359{ 1359{
1360 return loop_count; 1360 return loop_count;
1361} 1361}
1362 1362
1363unsigned int
1364ev_loop_depth (EV_P)
1365{
1366 return loop_depth;
1367}
1368
1363void 1369void
1364ev_set_io_collect_interval (EV_P_ ev_tstamp interval) 1370ev_set_io_collect_interval (EV_P_ ev_tstamp interval)
1365{ 1371{
1366 io_blocktime = interval; 1372 io_blocktime = interval;
1367} 1373}
2020 2026
2021 mn_now = ev_rt_now; 2027 mn_now = ev_rt_now;
2022 } 2028 }
2023} 2029}
2024 2030
2025static int loop_done;
2026
2027void 2031void
2028ev_loop (EV_P_ int flags) 2032ev_loop (EV_P_ int flags)
2029{ 2033{
2034 ++loop_depth;
2035
2030 loop_done = EVUNLOOP_CANCEL; 2036 loop_done = EVUNLOOP_CANCEL;
2031 2037
2032 call_pending (EV_A); /* in case we recurse, ensure ordering stays nice and clean */ 2038 call_pending (EV_A); /* in case we recurse, ensure ordering stays nice and clean */
2033 2039
2034 do 2040 do
2149 && !(flags & (EVLOOP_ONESHOT | EVLOOP_NONBLOCK)) 2155 && !(flags & (EVLOOP_ONESHOT | EVLOOP_NONBLOCK))
2150 )); 2156 ));
2151 2157
2152 if (loop_done == EVUNLOOP_ONE) 2158 if (loop_done == EVUNLOOP_ONE)
2153 loop_done = EVUNLOOP_CANCEL; 2159 loop_done = EVUNLOOP_CANCEL;
2160
2161 --loop_depth;
2154} 2162}
2155 2163
2156void 2164void
2157ev_unloop (EV_P_ int how) 2165ev_unloop (EV_P_ int how)
2158{ 2166{

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines