Add net-print/cups-1.4.2-r1.
[overlay.git] / net-print / cups / files / cups-1.4.2-str3200.patch
1 Index: scheduler/select.c
2 ===================================================================
3 --- scheduler/select.c  (revision 8887)
4 +++ scheduler/select.c  (working copy)
5 @@ -454,7 +454,7 @@
6      if (fdptr->read_cb && event->filter == EVFILT_READ)
7        (*(fdptr->read_cb))(fdptr->data);
8  
9 -    if (fdptr->write_cb && event->filter == EVFILT_WRITE)
10 +    if (fdptr->use > 1 && fdptr->write_cb && event->filter == EVFILT_WRITE)
11        (*(fdptr->write_cb))(fdptr->data);
12  
13      release_fd(fdptr);
14 @@ -499,7 +499,8 @@
15         if (fdptr->read_cb && (event->events & (EPOLLIN | EPOLLERR | EPOLLHUP)))
16           (*(fdptr->read_cb))(fdptr->data);
17  
18 -       if (fdptr->write_cb && (event->events & (EPOLLOUT | EPOLLERR | EPOLLHUP)))
19 +       if (fdptr->use > 1 && fdptr->write_cb &&
20 +           (event->events & (EPOLLOUT | EPOLLERR | EPOLLHUP)))
21           (*(fdptr->write_cb))(fdptr->data);
22  
23         release_fd(fdptr);
24 @@ -590,7 +591,8 @@
25        if (fdptr->read_cb && (pfd->revents & (POLLIN | POLLERR | POLLHUP)))
26          (*(fdptr->read_cb))(fdptr->data);
27  
28 -      if (fdptr->write_cb && (pfd->revents & (POLLOUT | POLLERR | POLLHUP)))
29 +      if (fdptr->use > 1 && fdptr->write_cb &&
30 +          (pfd->revents & (POLLOUT | POLLERR | POLLHUP)))
31          (*(fdptr->write_cb))(fdptr->data);
32  
33        release_fd(fdptr);
34 @@ -645,7 +647,8 @@
35        if (fdptr->read_cb && FD_ISSET(fdptr->fd, &cupsd_current_input))
36          (*(fdptr->read_cb))(fdptr->data);
37  
38 -      if (fdptr->write_cb && FD_ISSET(fdptr->fd, &cupsd_current_output))
39 +      if (fdptr->use > 1 && fdptr->write_cb &&
40 +          FD_ISSET(fdptr->fd, &cupsd_current_output))
41          (*(fdptr->write_cb))(fdptr->data);
42  
43        release_fd(fdptr);