updated for version 7.0014
diff --git a/src/gui_gtk_x11.c b/src/gui_gtk_x11.c
index e36c858..aed649b 100644
--- a/src/gui_gtk_x11.c
+++ b/src/gui_gtk_x11.c
@@ -5845,8 +5845,11 @@
 
 	/*
 	 * Loop in GTK+ processing  until a timeout or input occurs.
+	 * Skip this if input is available anyway (can happen in rare
+	 * situations, sort of race condition).
 	 */
-	gtk_main();
+	if (!input_available())
+	    gtk_main();
 
 	/* Got char, return immediately */
 	if (input_available())