diff --git a/src/libsync/bulkpropagatorjob.cpp b/src/libsync/bulkpropagatorjob.cpp index 9650bfa187329..b659b293d548a 100644 --- a/src/libsync/bulkpropagatorjob.cpp +++ b/src/libsync/bulkpropagatorjob.cpp @@ -276,10 +276,12 @@ void BulkPropagatorJob::slotStartUpload(SyncFileItemPtr item, item->_modtime = FileSystem::getModTime(originalFilePath); if (item->_modtime <= 0) { - return slotOnErrorStartFolderUnlock(item, SyncFileItem::SoftError, tr("Local file has invalid modified time. Do not upload to the server.")); + _pendingChecksumFiles.remove(item->_file); + return slotOnErrorStartFolderUnlock(item, SyncFileItem::NormalError, tr("File %1 has invalid modified time. Do not upload to the server.").arg(QDir::toNativeSeparators(item->_file))); } if (prevModtime != item->_modtime) { propagator()->_anotherSyncNeeded = true; + _pendingChecksumFiles.remove(item->_file); qDebug() << "trigger another sync after checking modified time of item" << item->_file << "prevModtime" << prevModtime << "Curr" << item->_modtime; return slotOnErrorStartFolderUnlock(item, SyncFileItem::SoftError, tr("Local file changed during syncing. It will be resumed.")); } @@ -292,6 +294,7 @@ void BulkPropagatorJob::slotStartUpload(SyncFileItemPtr item, // or not yet fully copied to the destination. if (fileIsStillChanging(*item)) { propagator()->_anotherSyncNeeded = true; + _pendingChecksumFiles.remove(item->_file); return slotOnErrorStartFolderUnlock(item, SyncFileItem::SoftError, tr("Local file changed during sync.")); } diff --git a/src/libsync/propagateupload.cpp b/src/libsync/propagateupload.cpp index c18fe7069b5a6..b655cfdfb545a 100644 --- a/src/libsync/propagateupload.cpp +++ b/src/libsync/propagateupload.cpp @@ -316,9 +316,9 @@ void PropagateUploadFileCommon::slotComputeContentChecksum() // and not the _fileToUpload because we are checking the original file, not there // probably temporary one. _item->_modtime = FileSystem::getModTime(filePath); - Q_ASSERT(_item->_modtime > 0); if (_item->_modtime <= 0) { - qCWarning(lcPropagateUpload()) << "invalid modified time" << _item->_file << _item->_modtime; + slotOnErrorStartFolderUnlock(SyncFileItem::NormalError, tr("File %1 has invalid modified time. Do not upload to the server.").arg(QDir::toNativeSeparators(_item->_file))); + return; } const QByteArray checksumType = propagator()->account()->capabilities().preferredUploadChecksumType(); @@ -392,8 +392,8 @@ void PropagateUploadFileCommon::slotStartUpload(const QByteArray &transmissionCh return slotOnErrorStartFolderUnlock(SyncFileItem::SoftError, tr("File Removed (start upload) %1").arg(fullFilePath)); } if (_item->_modtime <= 0) { - return slotOnErrorStartFolderUnlock( - SyncFileItem::SoftError, tr("Local file has invalid modified time. Do not upload to the server.")); + slotOnErrorStartFolderUnlock(SyncFileItem::NormalError, tr("File %1 has invalid modified time. Do not upload to the server.").arg(QDir::toNativeSeparators(_item->_file))); + return; } Q_ASSERT(_item->_modtime > 0); if (_item->_modtime <= 0) { @@ -405,8 +405,8 @@ void PropagateUploadFileCommon::slotStartUpload(const QByteArray &transmissionCh _item->_modtime = FileSystem::getModTime(originalFilePath); if (_item->_modtime <= 0) { - return slotOnErrorStartFolderUnlock( - SyncFileItem::SoftError, tr("Local file has invalid modified time. Do not upload to the server.")); + slotOnErrorStartFolderUnlock(SyncFileItem::NormalError, tr("File %1 has invalid modified time. Do not upload to the server.").arg(QDir::toNativeSeparators(_item->_file))); + return; } Q_ASSERT(_item->_modtime > 0); if (_item->_modtime <= 0) {