diff --git a/src/mirall/csyncthread.cpp b/src/mirall/csyncthread.cpp index 5f08cfe6be..3869fab20c 100644 --- a/src/mirall/csyncthread.cpp +++ b/src/mirall/csyncthread.cpp @@ -580,11 +580,23 @@ void CSyncThread::slotProgress(Progress::Kind kind, const QString &file, quint64 { Progress::Info pInfo = _progressInfo; + if( kind == Progress::StartSync ) { + QMutexLocker lock(&_mutex); + _currentFileNo = 0; + } + if( kind == Progress::StartDelete || + kind == Progress::StartDownload || + kind == Progress::StartRename || + kind == Progress::StartUpload ) { + QMutexLocker lock(&_mutex); + _currentFileNo += 1; + } + pInfo.kind = kind; pInfo.current_file = file; pInfo.file_size = total; pInfo.current_file_bytes = curr; - + pInfo.current_file_no = _currentFileNo; pInfo.overall_current_bytes += curr; pInfo.timestamp = QDateTime::currentDateTime(); diff --git a/src/mirall/csyncthread.h b/src/mirall/csyncthread.h index 4cbe1eb6f6..8d76b18c24 100644 --- a/src/mirall/csyncthread.h +++ b/src/mirall/csyncthread.h @@ -112,6 +112,7 @@ private: Progress::Info _progressInfo; int _downloadLimit; int _uploadLimit; + int _currentFileNo; QAtomicInt _abortRequested;