--- vte.c.orig	2003-03-07 11:51:21.000000000 -0600
+++ vte.c	2003-04-02 19:32:02.000000000 -0600
@@ -7437,7 +7437,7 @@
 		}
 #endif
 		vte_terminal_process_incoming(terminal);
-	} else {
+	} else if (_vte_buffer_length(terminal->pvt->incoming) > 0) {
 		/* Wait no more than N milliseconds for more data.  We don't
 		 * touch the timeout if we're already slated to call it again
 		 * because if the output were carefully timed, we could
