diff --git a/src/sbbs3/sbbsecho.c b/src/sbbs3/sbbsecho.c index 64fb42afbd77543aee08e9f9477d3714bc432954..7978ed2d56afdf9512eb043c1b85f1d4d209f731 100644 --- a/src/sbbs3/sbbsecho.c +++ b/src/sbbs3/sbbsecho.c @@ -5050,6 +5050,15 @@ int main(int argc, char **argv) continue; } printf("\n%s to %s ",getfname(path),smb_faddrtoa(&addr,NULL)); + if(hdr.attr&MSG_SENT) { + printf("already sent\n"); + fclose(fidomsg); + continue; + } + hdr.attr|=FIDO_SENT; + fseek(fidomsg,offsetof(fmsghdr_t,attr),SEEK_SET); + fwrite(&hdr.attr,sizeof(hdr.attr),1,fidomsg); + if(cfg.log&LOG_PACKING) logprintf("Packing %s (%s) attr=%04hX",path,smb_faddrtoa(&addr,NULL),hdr.attr); fmsgbuf=getfmsg(fidomsg,NULL);