diff --git a/src/interface.c b/src/interface.c
index 4dda82745..d58c1545e 100644
--- a/src/interface.c
+++ b/src/interface.c
@@ -558,7 +558,7 @@ int interfacePrintWithFD(int fd,char * buffer) {
 
 	interface = interfaces+i;
 
-	while(buflen>0) {
+	while(buflen>0 || !interface->expired) {
 		copylen = buflen>
 			interface->outBufSize-interface->outBuflen?
 			interface->outBufSize-interface->outBuflen: