diff --git a/src/sbbs3/pack_qwk.cpp b/src/sbbs3/pack_qwk.cpp index 8bf391660dab8779ffc1e3b8f2b85e84e649355e..b002addd6a12cc64a0573f1ecf40c95d7b08fd95 100644 --- a/src/sbbs3/pack_qwk.cpp +++ b/src/sbbs3/pack_qwk.cpp @@ -87,8 +87,10 @@ bool sbbs_t::pack_qwk(char *packet, ulong *msgcnt, bool prepack) if(!stricmp(cfg.fextr[k]->ext,useron.tmpext) && chk_ar(cfg.fextr[k]->ar,&useron,&client)) break; - if(k>=cfg.total_fextrs) - k=0; + if(k>=cfg.total_fextrs) { + lprintf(LOG_WARNING, "No extractable file type matching user's QWK packet type: %s", useron.tmpext); + return false; + } p=cmdstr(cfg.fextr[k]->cmd,str,ALLFILES,NULL); if((i=external(p,ex))==0) preqwk=1; diff --git a/src/sbbs3/un_rep.cpp b/src/sbbs3/un_rep.cpp index 9eac98f80adcf67d833c297a9f986fbe1255adc6..7c211c5efac5fa7d2d74ce979557afedbb7570c0 100644 --- a/src/sbbs3/un_rep.cpp +++ b/src/sbbs3/un_rep.cpp @@ -85,8 +85,10 @@ bool sbbs_t::unpack_rep(char* repfile) for(k=0;k<cfg.total_fextrs;k++) if(!stricmp(cfg.fextr[k]->ext,useron.tmpext) && chk_ar(cfg.fextr[k]->ar,&useron,&client)) break; - if(k>=cfg.total_fextrs) - k=0; + if(k>=cfg.total_fextrs) { + lprintf(LOG_WARNING, "No extractable file type matching user's REP packet type: %s", useron.tmpext); + return false; + } ex=EX_STDOUT; if(online!=ON_REMOTE) ex|=EX_OFFLINE;