git-svn-id: svn://db.shs.com.ru/pip@71 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5

This commit is contained in:
2015-04-07 10:53:26 +00:00
parent edd3d5f354
commit ac88ca0e7f
2 changed files with 23 additions and 13 deletions

View File

@@ -49,8 +49,8 @@ bool PIFileTransfer::send(PIVector<PIFile::FileInfo> entries) {
allEntries.back().dest_path = entries[i].name();
if (entries[i].isDir()) {
PIDir d(entries[i].path);
d.up();
PIVector<PIFile::FileInfo> fls = d.allEntries();
d.up();
for (int j=0; j<fls.size(); j++) {
allEntries << PFTFileInfo(fls[j]);
allEntries.back().dest_path = d.relative(fls[j].path);
@@ -70,7 +70,7 @@ bool PIFileTransfer::sendFiles(const PIVector<PFTFileInfo> &files) {
if (names.contains(files_[i].path)) {files_.remove(i); i--;}
else names << files_[i].path;
if (files_[i].isDir()) files_[i].size = 0;
// piCout << "prepare" << i << files_[i].path << files_[i].size;
// piCout << "prepare" << i << files_[i].path << files_[i].dest_path << files_[i].name();
}
srand(PISystemTime::current().toMilliseconds());
pftheader.session_id = rand();
@@ -93,13 +93,13 @@ bool PIFileTransfer::sendFiles(const PIVector<PFTFileInfo> &files) {
void PIFileTransfer::processFile(int id, ullong start, PIByteArray & data) {
// piCout << "processFile" << id << files_.size();
PIFile::FileInfo fi = files_[id-1];
piCout << "processFile" << id << files_.size();
PFTFileInfo fi = files_[id-1];
bytes_file_all = fi.size;
bytes_file_cur = start;
cur_file_string = fi.path;
PIString path = dir.absolutePath() + dir.separator + fi.path;
// piCout << "receive" << path << fi.size << data.size();
cur_file_string = fi.dest_path;
PIString path = dir.absolutePath() + dir.separator + fi.dest_path;
piCout << "receive" << path << fi.size << data.size();
if (fi.isDir()) {
// piCoutObj << "make dir" << fi.entry.path;
if (!PIDir::make(path)) {
@@ -254,7 +254,8 @@ void PIFileTransfer::receive_finished(bool ok) {
if (ok) {
desc >> files_;
PIStringList files;
piForeachC(PIFile::FileInfo &fi, files_) files << fi.path;
piForeachC(PFTFileInfo &fi, files_) files << fi.dest_path;
// piCout << files;
receiveFilesRequest(files, bytesAll(), &user_ok);
}
if (!ok || !user_ok) {