… | |
… | |
1765 | |
1765 | |
1766 | # ifdef _WIN32 |
1766 | # ifdef _WIN32 |
1767 | # define lstat(a,b) stat(a,b) |
1767 | # define lstat(a,b) stat(a,b) |
1768 | # endif |
1768 | # endif |
1769 | |
1769 | |
|
|
1770 | #define DEF_STAT_INTERVAL 5.0074891 |
|
|
1771 | #define MIN_STAT_INTERVAL 0.1074891 |
|
|
1772 | |
1770 | void |
1773 | void |
1771 | ev_stat_stat (EV_P_ ev_stat *w) |
1774 | ev_stat_stat (EV_P_ ev_stat *w) |
1772 | { |
1775 | { |
1773 | if (lstat (w->path, &w->attr) < 0) |
1776 | if (lstat (w->path, &w->attr) < 0) |
1774 | w->attr.st_nlink = 0; |
1777 | w->attr.st_nlink = 0; |
… | |
… | |
1799 | /* since we use memcmp, we need to clear any padding data etc. */ |
1802 | /* since we use memcmp, we need to clear any padding data etc. */ |
1800 | memset (&w->prev, 0, sizeof (ev_statdata)); |
1803 | memset (&w->prev, 0, sizeof (ev_statdata)); |
1801 | memset (&w->attr, 0, sizeof (ev_statdata)); |
1804 | memset (&w->attr, 0, sizeof (ev_statdata)); |
1802 | |
1805 | |
1803 | ev_stat_stat (EV_A_ w); |
1806 | ev_stat_stat (EV_A_ w); |
|
|
1807 | |
|
|
1808 | if (w->interval < MIN_STAT_INTERVAL) |
|
|
1809 | w->interval = w->interval ? MIN_STAT_INTERVAL : DEF_STAT_INTERVAL; |
1804 | |
1810 | |
1805 | ev_timer_init (&w->timer, stat_timer_cb, w->interval, w->interval); |
1811 | ev_timer_init (&w->timer, stat_timer_cb, w->interval, w->interval); |
1806 | ev_set_priority (&w->timer, ev_priority (w)); |
1812 | ev_set_priority (&w->timer, ev_priority (w)); |
1807 | ev_timer_start (EV_A_ &w->timer); |
1813 | ev_timer_start (EV_A_ &w->timer); |
1808 | |
1814 | |