diff --git a/src/sbbs3/zmodem.c b/src/sbbs3/zmodem.c index 400d373bb4379d6e5dc133ef10dde15887c10b97..29afc3c8aa0ec24725360692f23c82f0c3ea3f32 100644 --- a/src/sbbs3/zmodem.c +++ b/src/sbbs3/zmodem.c @@ -1344,10 +1344,6 @@ BOOL zmodem_request_crc(zmodem_t* zm, int32_t length) { zmodem_recv_purge(zm); zmodem_send_pos_header(zm,ZCRC,length,TRUE); - if(!zmodem_data_waiting(zm,zm->crc_timeout)) { - lprintf(zm,LOG_ERR,"Timeout waiting for response (%u seconds)", zm->crc_timeout); - return(FALSE); - } return TRUE; } @@ -1355,6 +1351,10 @@ BOOL zmodem_recv_crc(zmodem_t* zm, uint32_t* crc) { int type; + if(!zmodem_data_waiting(zm,zm->crc_timeout)) { + lprintf(zm,LOG_ERR,"Timeout waiting for response (%u seconds)", zm->crc_timeout); + return(FALSE); + } if((type=zmodem_recv_header(zm))!=ZCRC) { lprintf(zm,LOG_ERR,"Received %s instead of ZCRC", frame_desc(type)); return(FALSE);