@@ -29,11 +29,11 @@ #import "OFKqueueKernelEventObserver.h" #import "OFArray.h" #import "OFInitializationFailedException.h" -#import "OFObserveFailedException.h" +#import "OFObserveKernelEventsFailedException.h" #import "OFOutOfRangeException.h" #define eventListSize 64 @implementation OFKqueueKernelEventObserver @@ -92,12 +92,13 @@ * switched this to `void *` in NetBSD 10. */ event.udata = (__typeof__(event.udata))object; if (kevent(_kernelQueue, &event, 1, NULL, 0, NULL) != 0) - @throw [OFObserveFailedException exceptionWithObserver: self - errNo: errno]; + @throw [OFObserveKernelEventsFailedException + exceptionWithObserver: self + errNo: errno]; [super addObjectForReading: object]; } - (void)addObjectForWriting: (id )object @@ -113,12 +114,13 @@ * switched this to `void *` in NetBSD 10. */ event.udata = (__typeof__(event.udata))object; if (kevent(_kernelQueue, &event, 1, NULL, 0, NULL) != 0) - @throw [OFObserveFailedException exceptionWithObserver: self - errNo: errno]; + @throw [OFObserveKernelEventsFailedException + exceptionWithObserver: self + errNo: errno]; [super addObjectForWriting: object]; } - (void)removeObjectForReading: (id )object @@ -129,12 +131,13 @@ event.ident = object.fileDescriptorForReading; event.filter = EVFILT_READ; event.flags = EV_DELETE; if (kevent(_kernelQueue, &event, 1, NULL, 0, NULL) != 0) - @throw [OFObserveFailedException exceptionWithObserver: self - errNo: errno]; + @throw [OFObserveKernelEventsFailedException + exceptionWithObserver: self + errNo: errno]; [super removeObjectForReading: object]; } - (void)removeObjectForWriting: (id )object @@ -145,12 +148,13 @@ event.ident = object.fileDescriptorForWriting; event.filter = EVFILT_WRITE; event.flags = EV_DELETE; if (kevent(_kernelQueue, &event, 1, NULL, 0, NULL) != 0) - @throw [OFObserveFailedException exceptionWithObserver: self - errNo: errno]; + @throw [OFObserveKernelEventsFailedException + exceptionWithObserver: self + errNo: errno]; [super removeObjectForWriting: object]; } - (void)observeForTimeInterval: (OFTimeInterval)timeInterval @@ -167,18 +171,19 @@ events = kevent(_kernelQueue, NULL, 0, eventList, eventListSize, (timeInterval != -1 ? &timeout : NULL)); if (events < 0) - @throw [OFObserveFailedException exceptionWithObserver: self - errNo: errno]; + @throw [OFObserveKernelEventsFailedException + exceptionWithObserver: self + errNo: errno]; for (int i = 0; i < events; i++) { void *pool; if (eventList[i].flags & EV_ERROR) - @throw [OFObserveFailedException + @throw [OFObserveKernelEventsFailedException exceptionWithObserver: self errNo: (int)eventList[i].data]; if (eventList[i].ident == (uintptr_t)_cancelFD[0]) { char buffer;