|
|
@@ -666,11 +666,11 @@ subprocess_run() {
|
|
|
FD_ZERO(&fds);
|
|
|
FD_SET(read_fd, &fds);
|
|
|
|
|
|
+ // Sleep a bit to yield the timeslice if there's nothing new.
|
|
|
struct timeval tv;
|
|
|
tv.tv_sec = 0;
|
|
|
- tv.tv_usec = 1; // Sleep a bit to yield the timeslice if there's
|
|
|
- // nothing new.
|
|
|
-
|
|
|
+ tv.tv_usec = 1000; // 1 usec is not enough.
|
|
|
+
|
|
|
int result = select(read_fd + 1, &fds, NULL, NULL, &tv);
|
|
|
if (result > 0) {
|
|
|
// There is some noise on the pipe, so read it.
|