diff --git a/src/sbbs3/download.cpp b/src/sbbs3/download.cpp index dfa77f8de96c3fab2c4b37d61fdc4aa889ec1295..8331461b58e66a74cb00de01cf726aeb9156b06f 100644 --- a/src/sbbs3/download.cpp +++ b/src/sbbs3/download.cpp @@ -453,7 +453,9 @@ bool sbbs_t::sendfile(file_t* f, char prot, bool autohang) SAFEPRINTF2(str, "from %s %s" ,cfg.lib[cfg.dir[f->dir]->lib]->sname ,cfg.dir[f->dir]->sname); + current_file = f; bool result = sendfile(getfilepath(&cfg, f, path), prot, str, autohang); + current_file = nullptr; if(result == true) { if(cfg.dir[f->dir]->misc&DIR_TFREE && cur_cps) starttime += f->size / (ulong)cur_cps; diff --git a/src/sbbs3/str.cpp b/src/sbbs3/str.cpp index 8d24463b5e1ccc3ded7b2e6756c83ce635ac7466..0e4ff07786bacd59de57957bfda866000bf9ee4a 100644 --- a/src/sbbs3/str.cpp +++ b/src/sbbs3/str.cpp @@ -1096,6 +1096,8 @@ const char* prot_menu_file[] = { char* sbbs_t::xfer_prot_menu(enum XFER_TYPE type, user_t* user, char* keys, size_t size) { + if(type == XFER_DOWNLOAD && current_file != nullptr) + menu("download", P_NOERROR); size_t count = 0; bool menu_used = menu(prot_menu_file[type], P_NOERROR); if(user == nullptr)