this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix returning errors from sys_kevent() / sys_kqueue()

See https://github.com/darlinghq/darling/issues/766#issuecomment-619623968

+12 -3
+4 -1
src/kernel/emulation/linux/kqueue/kevent.c
··· 11 11 struct kevent *eventlist, int nevents, 12 12 const struct timespec *timeout) 13 13 { 14 - return kevent_impl(kq, changelist, nchanges, eventlist, nevents, timeout); 14 + int ret = kevent_impl(kq, changelist, nchanges, eventlist, nevents, timeout); 15 + if (ret < 0) 16 + ret = -errno; 17 + return ret; 15 18 } 16 19
+4 -1
src/kernel/emulation/linux/kqueue/kevent64.c
··· 11 11 struct kevent64_s *eventlist, int nevents, unsigned int flags, 12 12 const struct timespec *timeout) 13 13 { 14 - return kevent64_impl(kq, changelist, nchanges, eventlist, nevents, flags, timeout); 14 + int ret = kevent64_impl(kq, changelist, nchanges, eventlist, nevents, flags, timeout); 15 + if (ret < 0) 16 + ret = -errno; 17 + return ret; 15 18 } 16 19
+4 -1
src/kernel/emulation/linux/kqueue/kqueue.c
··· 14 14 15 15 long sys_kqueue(void) 16 16 { 17 - return kqueue_impl(); 17 + int ret = kqueue_impl(); 18 + if (ret < 0) 19 + ret = -errno; 20 + return ret; 18 21 } 19 22