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)"