|
@@ -681,10 +681,13 @@ subprocess_run() {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (input_ready) {
|
|
|
|
|
|
|
+ do {
|
|
|
|
|
+ // Empty the pipe of whatever is in it.
|
|
|
receive_command();
|
|
receive_command();
|
|
|
- }
|
|
|
|
|
|
|
+ input_ready = _pipe_read.has_gdata();
|
|
|
|
|
+ } while (input_ready);
|
|
|
|
|
|
|
|
|
|
+ // Sleep a good amount in order not to lock up the system.
|
|
|
struct timespec req;
|
|
struct timespec req;
|
|
|
req.tv_sec = 0;
|
|
req.tv_sec = 0;
|
|
|
req.tv_nsec = 50000000; // 50 ms
|
|
req.tv_nsec = 50000000; // 50 ms
|