diff --git a/libs/main/io_utils/pifiletransfer.cpp b/libs/main/io_utils/pifiletransfer.cpp index 7389a769..acdeac73 100644 --- a/libs/main/io_utils/pifiletransfer.cpp +++ b/libs/main/io_utils/pifiletransfer.cpp @@ -131,6 +131,12 @@ bool PIFileTransfer::sendFiles(const PIVector & files) { void PIFileTransfer::processFile(int id, ullong start, PIByteArray & data) { // piCout << "processFile" << id << files_.size(); + if (id <= 0 || id > files_.size_s()) { + cur_file_string = "Error: Invalid file id " + PIString::fromNumber(id); + piCoutObj << cur_file_string; + stopReceive(); + return; + } PFTFileInfo fi = files_[id - 1]; bytes_file_all = fi.size; bytes_file_cur = start;