@@ -185,11 +185,16 @@ if (FDs[i].revents & POLLIN) { if (FDs[i].fd == _cancelFD[0]) { char buffer; +#ifdef OF_HAVE_PIPE OF_ENSURE(read(_cancelFD[0], &buffer, 1) == 1); +#else + OF_ENSURE(recvfrom(_cancelFD[0], &buffer, 1, + 0, NULL, NULL) == 1); +#endif FDs[i].revents = 0; continue; }