summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--auto-virtserial.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/auto-virtserial.c b/auto-virtserial.c
index e9c238e..78c35bc 100644
--- a/auto-virtserial.c
+++ b/auto-virtserial.c
@@ -1501,10 +1501,12 @@ static void post_test_cleanup(int nr)
if (ret < 0)
goto skip_guest;
while ((ret = guest_poll(nr, 0, 0))) {
- if ((ret > 0) && (ret & POLLIN))
- guest_read(nr, BUF_LENGTH);
- else
+ if ((ret > 0) && (ret & POLLIN)) {
+ if (!guest_read(nr, BUF_LENGTH))
+ break;
+ } else {
break;
+ }
}
guest_close_port(nr);