--- ./drivers/festival/festivalsynthesisdriver.c.original	2010-10-24 01:53:20.000000000 +0200
+++ ./drivers/festival/festivalsynthesisdriver.c	2010-10-24 01:57:12.000000000 +0200
@@ -928,7 +928,8 @@
 {
         g_assert (IS_FESTIVAL_SYNTHESIS_DRIVER (d) && ack && d->channel_sock);
 
-	g_io_channel_read_line (d->channel_sock, ack, NULL, NULL, NULL);
+	if (g_io_channel_read_line (d->channel_sock, ack, NULL, NULL, NULL) == G_IO_STATUS_EOF)
+		festival_synthesis_driver_stop (d);
 }
 
 
@@ -938,7 +939,8 @@
 {
         g_assert (IS_FESTIVAL_SYNTHESIS_DRIVER (d) && ack && d->channel_pipe);
 
-	g_io_channel_read_line (d->channel_pipe, ack, NULL, NULL, NULL);
+	if (g_io_channel_read_line (d->channel_pipe, ack, NULL, NULL, NULL) == G_IO_STATUS_EOF)
+		festival_synthesis_driver_stop (d);
 }
 
 
