linux: try inotify_init if inotify_init1 returns ENOSYS
The kernel may be older than the kernel headers that libuv is compiled against.
This commit is contained in:
parent
db413f3806
commit
1b6df97690
@ -156,11 +156,16 @@ static void uv__inotify_read(EV_P_ ev_io* w, int revents);
|
||||
|
||||
|
||||
static int new_inotify_fd(void) {
|
||||
#if HAVE_INOTIFY_INIT1
|
||||
return inotify_init1(IN_NONBLOCK | IN_CLOEXEC);
|
||||
#else
|
||||
int fd;
|
||||
|
||||
#if HAVE_INOTIFY_INIT1
|
||||
fd = inotify_init1(IN_NONBLOCK | IN_CLOEXEC);
|
||||
if (fd != -1)
|
||||
return fd;
|
||||
if (errno != ENOSYS)
|
||||
return -1;
|
||||
#endif
|
||||
|
||||
if ((fd = inotify_init()) == -1)
|
||||
return -1;
|
||||
|
||||
@ -170,7 +175,6 @@ static int new_inotify_fd(void) {
|
||||
}
|
||||
|
||||
return fd;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user