diff --git a/src/sbbs3/zmodem.c b/src/sbbs3/zmodem.c
index 83dd9e9386206a4e70a2c1df1668c1f658ab6312..a8c2664b57528ad98090a2e6ddb9f8bb5fbbb158 100644
--- a/src/sbbs3/zmodem.c
+++ b/src/sbbs3/zmodem.c
@@ -1387,15 +1387,13 @@ int zmodem_send_from(zmodem_t* zm, FILE* fp, ulong pos, ulong fsize, ulong* sent
 			int type;
 			while(is_connected(zm) && !zm->cancelled) {
 				type = zmodem_recv_header(zm);
-				if(type == ZNAK || type == ZRPOS || type == TIMEOUT) {
-					return type;
-				}
-				if(type == ZACK) {
-					if(zm->rxd_header_pos == ftell(fp))
-						break;
-					lprintf(zm,LOG_WARNING,"ZACK for incorrect offset (%lu vs %lu)"
-						,zm->rxd_header_pos, ftell(fp));
-				}
+				if(type != ZACK)
+					return(type);
+
+				if(zm->rxd_header_pos == ftell(fp))
+					break;
+				lprintf(zm,LOG_WARNING,"ZACK for incorrect offset (%lu vs %lu)"
+					,zm->rxd_header_pos, ftell(fp));
 			} 
 
 			if((ulong)ftell(fp) >= fsize) {
@@ -1462,6 +1460,9 @@ BOOL zmodem_send_file(zmodem_t* zm, char* fname, FILE* fp, BOOL request_init, ti
 
 	zm->file_skipped=FALSE;
 
+	if(zm->no_streaming)
+		lprintf(zm,LOG_WARNING,"Streaming disabled");
+
 	if(request_init) {
 		for(errors=0; errors<=zm->max_errors && !zm->cancelled && is_connected(zm); errors++) {
 			lprintf(zm,LOG_INFO,"Sending ZRQINIT (%u of %u)"